Word VBAでテキストファイルを出力する方法|初心者向け解説

パソコンパソコン・スマホ教室
スポンサーリンク

Wordの文書をテキストファイルに変換したいけれど、VBA(Visual Basic for Applications)を使ったことがない方も多いのではないでしょうか。今回は、そんな初心者の方でも安心して取り組めるように、Word VBAを使ってテキストファイルを出力する方法をわかりやすく解説します。

スポンサーリンク

Word VBAでテキストファイルを出力する基本の流れ

Wordのイメージ

Wordのイメージ

まずは、Word VBAを使ってテキストファイルを出力する基本的な流れを押さえましょう。

Word VBAの準備

Wordを開き、キーボードの「Alt」キーと「F11」キーを同時に押して、VBAエディタを開きます。新しいモジュールを挿入し、以下のコードを入力します。

vba
Sub ExportToTextFile()
Dim doc As Document
Set doc = ActiveDocument
doc.SaveAs2 "C:\path\to\your\file.txt", wdFormatText
End Sub

このコードは、現在開いているWord文書を指定したパスにテキストファイルとして保存するものです。

保存先の指定

コード内の「C:\path\to\your\file.txt」の部分を、実際に保存したい場所とファイル名に変更してください。例えば、デスクトップに「output.txt」として保存したい場合は、以下のように書きます。

vba
doc.SaveAs2 "C:\Users\YourUsername\Desktop\output.txt", wdFormatText

実行と確認

コードを入力したら、VBAエディタのツールバーにある「実行」ボタンをクリックするか、キーボードの「F5」キーを押してマクロを実行します。指定した場所にテキストファイルが保存されていることを確認してください。

文字コードをUTF-8に設定して保存する方法

デフォルトでは、Word VBAで保存されるテキストファイルはShift-JISという文字コードになります。これをUTF-8に変更するには、以下のようにコードを修正します。

vba
Sub ExportToUTF8TextFile()
Dim doc As Document
Set doc = ActiveDocument
doc.SaveAs2 "C:\path\to\your\file.txt", wdFormatText, Encoding:=msoEncodingUTF8
End Sub

このコードでは、`Encoding:=msoEncodingUTF8`を追加することで、保存されるテキストファイルの文字コードをUTF-8に設定しています。

複数のWord文書を一括でテキストファイルに変換する方法

フォルダ内にある複数のWord文書を一括でテキストファイルに変換したい場合、以下のようなコードを使用します。

vba
Sub BatchExportToTextFiles()
Dim folderPath As String
Dim fileName As String
Dim doc As Document
folderPath = "C:\path\to\your\folder\"
fileName = Dir(folderPath & "*.docx")
Do While fileName <> ""
Set doc = Documents.Open(folderPath & fileName)
doc.SaveAs2 folderPath & Left(fileName, Len(fileName) - 5) & ".txt", wdFormatText
doc.Close
fileName = Dir
Loop
End Sub

このコードでは、指定したフォルダ内のすべてのWord文書(\*.docx)を開き、それぞれをテキストファイルとして保存します。

よくある質問や疑問

質問1: VBAエディタの開き方がわかりません。

VBAエディタを開くには、Wordを開いた状態でキーボードの「Alt」キーと「F11」キーを同時に押してください。これでVBAエディタが開きます。

質問2: 保存先のパスを指定する際、どのように書けばよいですか?

保存先のパスは、ファイルエクスプローラーで目的のフォルダを開き、そのパスをコピーしてコードに貼り付けてください。例えば、デスクトップの場合は「C:\Users\YourUsername\Desktop\」となります。

質問3: 複数のWord文書を一括で処理する際、処理が遅くなりませんか?

大量の文書を処理する場合、処理時間が長くなることがあります。処理速度を向上させるためには、不要なアプリケーションを閉じる、VBAの画面更新を無効にするなどの工夫が有効です。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

Word VBAを使ってテキストファイルを出力する方法は、基本的なコードを覚えることで簡単に実行できます。文字コードの設定や複数ファイルの一括処理など、用途に応じた応用も可能です。ぜひ、実際に手を動かして試してみてください。

他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました