Anthonyは、複数のレポートをテキストファイル(つまり、filename.txt)でWordに定期的にインポートします。次に、マクロを使用して、このインポートされた情報をフォーマットします。書式設定マクロが完了した後、Anthonyは各レポートに手動で「名前を付けて保存」を使用してレポートをWord文書として保存します。彼は、データを保存する最後のステップを自動化するために、マクロにどのコマンドを追加する必要があるのか​​疑問に思っています。 Anthonyは、filename.docxのように、元のテキストファイルと同じルート名を使用してファイルをWord形式に変更するだけで、マクロにファイルを保存させたいと考えています。

実際にファイルを保存する手順は比較的簡単です。ドキュメントをWord形式で保存する次のコードスニペットについて考えてみます。

ActiveDocument.SaveAs FileName:=sDocName, _   FileFormat:=wdFormatDocument

ファイルの名前はsDocName変数に格納され、FileFormatプロパティの設定は、ドキュメントをWord形式で保存することを示しています。既存のマクロでは、あとは必要なファイル名でsDocNameを設定するだけです。

元のテキストファイル名を変数sOrigNameに保存したとすると、次のコードを使用して拡張子を.docに変更し、ファイルを保存できます。

sDocName = Left(sOrigName, Len(sOrigName) - 4)

sDocName = sDocName & ".docx"

ActiveDocument.SaveAs FileName:=sDocName, _   FileFormat:=wdFormatDocument

このコードは、sOrigNameの最後の4文字にファイル名拡張子(ピリオドと3文字)が含まれていることを前提としています。これらは削除され、「。docx」拡張子が追加されます。元のファイルのファイル名拡張子の長さがわからない場合は、必要に応じて、Split関数を使用してファイルを分解できます。

sNameParts = Split(sOrigName, ".")

sDocName = sNameParts(0) & ".docx"

ActiveDocument.SaveAs FileName:=sDocName, _   FileFormat:=wdFormatDocument

このマクロを機能させるには、sNamePartsを文字列配列として宣言していることを確認してください。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(404)は、Microsoft Word 2007、2010、2013、および2016に適用されます。Wordの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。