PHV...Draftsmen always use upper case. It's a holdover from the days of pencils.
The following works in AutoCad:
You have to step through all the objects in modelspace and/or paperspace (and maybe multiple layouts) and check each object to see if it is a block. If it is a block, then set a variable to the block and check the block name. If it is "TitleBlock" or "BOM" (or whatever you need) then get the attributes from the block. If you are not sure of the block name then you might have to generate an error if the block does not have attributes and move to the next object. Once you have the attributes assigned to a variable you can step through each element of the variable and write the textstring property of each attribute to a text file. You might want to generate a comma delimited text file with the tagstring property as well. By the way, sometimes VBA for AutoCad insists on using multi-element variables instead of arrays. This is one of those times.
If you have multiple thousands of objects in your Cad file, it would be faster to use the SelectOnScreen function. It pauses the macro until a selection (or multiple selections) is made and the enter key is hit. That would allow you to select the specific block(s) you want the info pulled from.
It would be cleaner to just dump the data straight to Excel using VBA and bypass a text file.
As an aside you shouldn't feel too bad about loosing your job. After all, it used to be my job. That's why I know how to do this. Good Luck.