I've had some questions about how I use something like Applescript to add full scripture texts to a table of scripture references. Instead of talking about it, I'll just show you a script to do that very thing. I've added comment lines that describe what most of the lines do. The scriptability of Microsoft Word 2004 is phenomenal.
-- This script cycles through a table of scripture references and looks up the text in Accordance, adding the full text to the end of the cells.
-- It works on the first table of the active document in Microsoft Word.
tell application "Microsoft Word"
-- work on the first table of the active Word document
set theTable to table 1 of active document
set rowCount to (count rows of theTable)
set columnCount to (count columns of theTable)
-- speed things up by not redrawing the window after each retrieval
set screen updating to false
-- repeat the functions with every cell of every row of every column
repeat with rr from 1 to rowCount
repeat with cc from 1 to columnCount
-- you can change those two lines to work on only certain rows or columns, such as:
-- repeat with cc from 3 to 5
-- will restrict it to columns 3, 4 and 5.
-- set the current working range to the next cell
set aCell to cell cc of row rr of theTable
set aRange to create range active document start (start of content of text object of aCell) end ((end of content of text object of aCell) - 1)
set theRef to content of aRange
-- empty cells have a ~, indicating move on to next cell
if theRef does not contain "~" then
-- try to get the scripture text from Accordance
try
-- change the module name from "GNT" to whatever you wish.
-- the result is in the custom citation format of Accordance prefs
tell application "Accordance" to set theText to «event AccdTxRf» {"GNT", theRef, true}
-- set the current range to the end of the contents of current cell
set aRange to create range active document start ((end of content of text object of aCell) - 1) end ((end of content of text object of aCell) - 1)
-- add the results to the end of the cell after a carriage return
set content of aRange to return & theText
-- redefine the range to inclue the text we just placed in the cell
set aRange to move start of range aRange by a character item count 1
set aRange to change end of range aRange by a cell extend type by selecting
-- do whatever formatting you'd like to the inserted text, otherwise, it will have the character format already present in the cell
set style of aRange to "GreekText"
-- set bold of font object of aRange to false
-- set color index of font object of aRange to black
end try
end if
end repeat
end repeat
-- ok, now update the window of the Word document
set screen updating to true
end tell