ワードファイルをテキストファイルに変換して出力する方法
スポンサーリンク
VBScript でワードファイルをテキストファイルに変換して出力するサンプルコードです。尚、このスクリプトを実行するにはワードがインストールされている必要があります。
ファイルを1つ指定して変換する
VBScript(実行可能なサンプルコード) | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | Option Explicit On Error Resume Next Dim objWordApp Dim objWordDoc Dim strWordFilePath Dim strTextFilePath '変換元のワードファイルの絶対パスを指定 strWordFilePath = "c:\temp\テスト.docx" '変換先のテキストファイルの絶対パスを指定(出力先) strTextFilePath = "c:\temp\テスト.txt" 'ワードのオブジェクトを作成 Set objWordApp = WScript.CreateObject("Word.Application") If Err.Number = 0 Then 'ワードドキュメントを開く Set objWordDoc = objWordApp.Documents.Open(strWordFilePath) If Err.Number = 0 Then 'テキスト形式で保存 objWordDoc.SaveAs strTextFilePath, 2 objWordDoc.Close objWordApp.Quit Else WScript.Echo "エラー:" & Err.Description End If Else WScript.Echo "エラー:" & Err.Description End If Set objWordDoc = Nothing Set objWordApp = Nothing |
特定のフォルダのワードファイルを全てテキストに変換して出力する
次のサンプルコードは、特定のフォルダの「doc」ファイルと「docx」ファイルをテキストファイルに変換して出力します。出力するテキストファイルは、元のワードファイルの拡張子を「txt」にしたファイル名で出力します。
VBScript(実行可能なサンプルコード) | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | Option Explicit On Error Resume Next 'ワード関連のオブジェクト Dim objWordApp Dim objWordDoc 'ファイルシステム関連のオブジェクト Dim objFileSys Dim objFolder Dim objFile '各種文字列 Dim strWordFilePath Dim strTextFilePath Dim strTargetFolderPath Dim strFileExtension '変換するワードファイルが入っているフォルダのパスを指定する。 strTargetFolderPath = "." 'ファイルシステムを扱うオブジェクトを作成 Set objFileSys = CreateObject("Scripting.FileSystemObject") 'ワードのオブジェクトを作成 Set objWordApp = WScript.CreateObject("Word.Application") If Err.Number = 0 Then Set objFolder = objFileSys.GetFolder(strTargetFolderPath) 'FolderオブジェクトのFilesプロパティからFileオブジェクトを取得 For Each objFile In objFolder.Files strFileExtension = objFileSys.GetExtensionName(objFile.Name) 'ワードの拡張子のみ処理対象とする If strFileExtension = "doc" or strFileExtension = "docx" Then strWordFilePath = objFile.Path strTextFilePath = objFile.ParentFolder & _ "\" & _ objFileSys.getBaseName(objFile.Name) & _ ".txt" WScript.Echo "変換開始:" & strWordFilePath 'ワードドキュメントを開く Set objWordDoc = objWordApp.Documents.Open(strWordFilePath) If Err.Number = 0 Then 'テキスト形式で保存 objWordDoc.SaveAs strTextFilePath, 2 objWordDoc.Close Set objWordDoc = Nothing Else WScript.Echo "エラー:" & Err.Description End If WScript.Echo "変換完了:" & strTextFilePath Else WScript.Echo "変換対象外:" & objFile.Name End If Next Else WScript.Echo "エラー:" & Err.Description End If objWordApp.Quit Set objWordDoc = Nothing Set objWordApp = Nothing |
スポンサーリンク
- VBScript
- ソースコード上で1行の処理を改行する方法
- 文字列に改行を挿入する方法
- 文字列の一部を置換する方法
- エラー一覧とエラー処理のサンプルコード
- 当月月初、翌月月初、前月月初の日付を取得する方法
- 当月月末、翌月月末、前月月末の日付を取得する方法
- GUI と CUI のどちらで実行されたかを判定する方法
- 引数の数を取得する方法
- 引数を受け取る方法
- 引数に半角スペースを含める方法
- yyyymmdd 形式の文字列で現在日付を取得する方法
- ワードファイルをテキストファイルに変換して出力する方法
- 時間を指定して実行を一時停止する方法
- 別のVBScriptファイルを実行して戻り値を受け取る方法
- 別のVBScriptファイルを実行する方法
- 別のVBScriptファイルに引数を渡して実行する方法
- 配列のサイズを動的に変更する方法
- 実行中のスクリプトのファイル名・フルパスを取得する方法
- For Each で配列の全ての要素を処理する方法
- 配列の要素数を取得する方法
- 配列の要素を1つずつ処理する
- 配列を結合して CSV や TSV などの文字列にする方法
- ファイル・フォルダ操作
- フォルダ内のファイル一覧を取得する
- フォルダ内のフォルダ一覧を取得する
- ファイルの拡張子を調べて、拡張子ごとに処理を分ける方法
- ファイルをコピーする方法
- 拡張子無しのファイル名を取得する方法
- CSV ファイルを TSV ファイルや他の区切り文字列に変換する方法
- ファイルの内容を1つの文字列として一括で読み込む方法
- フォルダ内のファイル数を取得する方法
- ファイルの内容を1行ずつ読み込む方法