Thanks for the suggestion Daron, but I guess I didn't explain the situation too clearly.
Lets try this explaination and see if we get any further:
I made a Room block w/ attributes that gets inserted into a floor plan for each room/space. The blocks attributes describe the room name, number, finishes, clg height, etc.(you know, all that jazz). Each block has a unique handle and each attribute within that block has a unique handle, because that's the way Autocad wants it. Ok. Enough for that dwg.
Then I have another block that looks like a line item in a finish schedule. It has an attribute for each column of that lineitem.
I wrote a lisp a while back that extracts all the data from each of attributes from the specified block from the floor plan and compiles the textstrings into an ordered list. It opens this floor plan and retrieves the data either using ObjectDBX (if the user does not have the file open) or reads the dwg data from the Acad documents collection. It then inserts my second block into a new dwg (which is the active dwg) and fills in the attributes with the strings from the ordered list. It does this for each room/space so that when it is finished it looks like a Finish Schedule. The tool also inserts a "header" block at the beginning and inserts a "blank" lineitem at increments of 10 or when the room numbers are not consecutive.
Whew! That was a mouthful. With all that being said, now I would like to reverse the process. We have found that once you make the schedule it is far easier to edit the schedule and have it update the plan than it is to edit the plan and have it update the schedule. My thinking was when I made my ordered list from the attributes in the floor plan I would included their respective handles as well. Then when I insert the second block I would attach the handles to each of the attributes using xdata so that each attribute is paired up with a specific attribute in the floor plan. So even if we have a floor plan change (all the time) and the attributes are moved they will still update correctly.
Does this make it any clearer?