Ну вот. В настоящее время я по колено в AutoIt, поэтому я использовал это. Вы можете получить сам инструмент на autoitscript.com.
Заметки:
Я связал Ctrl+Shift+I с командой Word InsertFile , вы должны сделать то же самое, чтобы скрипт работал. Google это или посмотрите на StackExchange.
Сценарий работает исходя из предположения, что пустой документ уже открыт в MS Word и что существует только одно окно MS Word.
Измените значение $ locationOfRtfFiles в соответствии с вашими настройками. Он должен указывать на папку, содержащую RTF.
Интервал ожидания может потребовать корректировки (зависит от производительности вашего компьютера и размера / сложности файлов RTF)
Код (чуть более 10 строк, но будем надеяться, что никто не считает):
; Some common sense stuff, look it up in the docs
AutoItSetOption("TrayIconDebug", 1)
AutoItSetOption("MustDeclareVars", 1)
; Tell AutoIt to match the substring anywhere in the window title
AutoItSetOption("WinTitleMatchMode", 2)
; find a window by title and some contained text (optional),
; make it active and wait for the window to become
; active
Func MyWinWait($title, $keytext = "")
WinWait($title, $keytext)
WinActivate($title, $keytext)
WinWaitActive($title, $keytext)
Return
EndFunc
Local $locationOfRtfFiles = "C:\MyCollectionOfRtfPorn"
; for every file in the set
For $fileIndex = 1 to 70000
; focus on the main Word window
MyWinWait("Microsoft Word")
; emulate Ctrl+Shift+I
Send("{CTRLDOWN}{SHIFTDOWN}i{SHIFTUP}{CTRLUP}")
; wait for the Insert File window to open
MyWinWait("Insert File")
; type out a file's name
Send($locationOfRtfFiles & "\" & $fileIndex & ".rtf")
; confirm selection
Send("{ENTER}")
; sleep for 10 seconds before proceeding to next file
Sleep(10000)
Next
Вы можете настроить ограничение цикла на основе фактического количества RTF. Кроме того, если имена файлов не соответствуют схеме нумерации, которую вы изначально указали, сценарий потребует изменений.