大量のwordファイルをtxtファイルに変換するマクロ
概要
うっかり納品形式指定し忘れたり 原稿がword (*.docx)で納品されたけどscriptで一括登録したいからtxtファイルに変換したい。
そんなシーンに遭遇する人ゼロではないでしょう。
word にはtxt保存機能があるので一つ一つ開いて保存しなおしても良いのですが、大量にあると大変です。
そんな時に便利なVBAを必要に迫られて作成したので公開しておきます。
マクロ
Sub docx2txtマクロ() ' ' docx2txt Macro ' ' Dim wordFile As String, msg As String, txtFileName As String, hoge As String wordFile = Dir("C:¥before_docx¥*.docx") Do While wordFile <> "" txtFileName = "C:¥conver_txt¥" & Replace(wordFile, ".docx", ".txt") wordFile = "C:¥before_docx¥" & wordFile Documents.Open wordFile Documents(wordFile).Activate ActiveDocument.SaveAs2 FileName:=txtFileName, FileFormat:=wdFormatDOSTextLineBreaks ActiveDocument.Close msg = msg & txtFileName & vbCrLf wordFile = Dir() Loop MsgBox msg End Sub
GitHub上ではこちら mr51/docx2txt · GitHub
あとがき
officceファイルの操作はなんだかんだVBAがお手軽、wordでもマクロが使えることを覚えておくと何かと便利だと思います。