Hi,
We don't know the reasons because he would like to unload the procedure, however the procedure to unload it's correct.
We suggested how to fix the first point he highlighted concerning the SelectionSet, declaring as general object instead AcadSelectionSet.

If you have time try to download my solution and give me a feedback.
What I understand is:
He has inside the drawing several text related to a TAG, and would like to change based an excel list before created by himself or somebody.
So I created a selection set containing all text found in the drawing (Text are placed in a specific LAYER, named TAG), and a loop for comparing and substituting when comparison matches the excel cell.
Let me know your impression.