You may be overthinking this... at least as far as how complex this may be.
Your use case is pretty unique, so you're not likely to find a pre-built app/script that will do it for you, but the semantics of what you're trying to do is pretty straightforward and amount to a few lines of AppleScript (plus some error checking, if you care).
In short, you have a couple of steps to consider:
1) Get the data from Excel
2) Loop through the text document, replacing known source strings (e.g. "A_1") with values from the Excel data.
3) There is no step 3.
Now, your original post was a little light on details, so I'm making some assumptions here, but it shouldn't be hard to change the use cases.
For a start you mention "A_1", "A_2", etc., so I'm going to assume that all the cell data is in column A and that there's a fixed number of rows. If that's the case, you can get this data via simply:
tell application "Microsoft Excel"
set cell_data to value of every cell of range "A1:A30" of worksheet 1 of document 1
end tell
Now you have a list of values of all cells in the range "A1:A30".
You can edit the script to grab any other range of cells, or be more creative to dynamically determine the number of non-empty cells if you like. For simplicitie's sake let's go with a fixed, known range A1:A30.
That's also it as far as Excel is concerned - we have the data we need (and, to be honest, the less AppleScripting you have to do with Excel, the better your mental health will be).
Now we have our cell data, we just need to iterate through the text document and perform a series of find/replace actions.
You don't say if this is a plain text file, or if it's a formatted document in Word, or Pages, or something else. For now I'll assume plain text and we're using TextWangler (my text editor of choice), but other apps are equally valid with minor changes (unless you're using Microsoft Word, who's AppleScript implementation is, incredibly, even worse than Excel's).
To perform a replace in TextWrangler to replace every occurrence of "A_1" with the value from the first cell, you'd write something like:
tell application "TextWrangler"
tell text of text document 1
replace "A_1"using (item 1 of cell_data)options {starting at top:true, match words:true}
endtell
end tell
the options at the end make sure the entire document is checked, and that only "A_1" is matched (e.g. not A_11, A_12, etc.)
So now you have the basic construct - how to extract the data from Excel, and how to perform a find/replace. The only missing part is iterating through all the cell values (where the above example only handles the first cell). That last point can be addressed with a simple loop:
tell application "TextWrangler"
tell text of text document 1
repeat with index from 1 to count cell_data
replace ("A_" & index as text) using (itemindex of cell_data) options {starting at top:true, match words:true}
end repeat
end tell
end tell
Now you can see I setup a loop that iterates through the number of cells in cell_data and performs a replace using the index to match the cells (e.g. A_1 matches cell 1, A_2 matches cell 2, etc.)
So now, the completed script should look like:
tell application "Microsoft Excel"
set cell_data to value of every cell of range "A1:A30" of worksheet 1 of document 1
end tell
tell application "TextWrangler"
tell text of text document 1
repeat with index from 1 to count cell_data
replace ("A_" & index as text) using (itemindex of cell_data) options {starting at top:true, match words:true}
end repeat
end tell
end tell
Just open your Excel sheet, open the text document, and run.
As I hinted at the beginning, this is only a skeleton example, and there is more that you might want/need.
For example, there's no error checking to make sure that there's any Excel document actually open (nor TextWrangler document for that matter).
There's also no handling of cells outside of the A column - I took your original post literally, but if you want to match any cell on the sheet (e.g. A_3, B_43, AD_256) then there's more work to do.