• ベストアンサー

複数のワード文書を一括でテキスト文書に保存する方法

OSはWindows XPで、WORD 2002を使用しています。 複数のワード文書をそれぞれ、テキスト文書にして保存したいの ですが、「名前を付けて保存」でファイルの種類を書式なし、で ひたすら保存し続けるのも時間がかかるので、マクロを使ってでも 簡単に保存し直す方法はないでしょうか? PC環境の問題で、 フリーソフトを使うことはできないのが、面倒なとこなんですが、、。 自分で思いつく最短の方法は、上記の保存方法をマクロに記録 して、ショートカットキーを割り当て、ひたすらやる感じです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

テキストに変換するdoc文書を一箇所(例:D:\doc2text)にコピーしておきます。 下記のマクロをWordの標準モジュールに貼り付けます。 参照設定で「Microsoft Scripting Runtime」にチェックを入れます。 doc文書のあるパスを「WORKDIR」定数に設定します。 以上の手順を踏んでマクロを実行すると、「WORKDIR」にテキスト化された文書が作成されます。 Sub main() Const WORKDIR As String = "D:\doc2text\" Dim fso As New FileSystemObject, a_fl As File For Each a_fl In fso.GetFolder(WORKDIR).Files If a_fl.Name Like "*.doc" Then Application.Documents.Open a_fl.Path Application.ActiveDocument.SaveAs Replace(a_fl.Path, ".doc", ".txt"), 2 'text形式で保存 Application.ActiveDocument.Close End If Next Set fso = Nothing End Sub 必要なら、適宜エラー処理を追加してください。

goosaboten
質問者

お礼

回答ありがとうございます。m(__)m 早速、試してみようとおもったのですが、 「doc文書のあるパスを「WORKDIR」定数に設定します。、、、」 というくだりが、よくわからないのですが、これはどうやって 設定するのでしょうか?

その他の回答 (1)

回答No.2

>「doc文書のあるパスを「WORKDIR」定数に設定します。、、、」 >というくだりが、よくわからないのですが、これはどうやって >設定するのでしょうか? マクロはご自分では書けないということでしょうか。また「パス」という語句がよく分からないのでしょうか。パスとは、エクスプローラを開くと「アドレス」欄に表示される「C:\・・・」という文字列のことです。 たとえばDOC文書を「D:\test」に全部コピーしたとしましょう。その場合は、 「Const WORKDIR As String = "D:\doc2text\"」 とある部分を 「Const WORKDIR As String = "D:\test\"」 と変更してください。 「Const WORKDIR As String = "<DOC文書のあるパス>"」ということです。

goosaboten
質問者

お礼

教えて頂いた通りにやってみますと、出来ました!! 感動です。 回答ありがとうございました。 追伸: ご推察通りマクロは、自分では書いたことがないのです。 録画ボタンみたいなのを押して、書かれたマクロを使ってるレベルです。

関連するQ&A

専門家に質問してみよう