Ну вот. В настоящее время я по колено в 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("i") ; wait for the Insert File window to open MyWinWait("Insert File") ; type out a file's name Send($locationOfRtfFiles & "\" & $fileIndex & ".rtf") ; confirm selection Send("") ; sleep for 10 seconds before proceeding to next file Sleep(10000) Next
Вы можете настроить ограничение цикла на основе фактического количества RTF. Кроме того, если имена файлов не соответствуют схеме нумерации, которую вы изначально указали, сценарий потребует изменений.