当サイトの記事にはプロモーションが含まれています。

Word VBAで「名前を付けて保存」ダイアログを表示する方法

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

Wordで文書を保存する際、毎回「名前を付けて保存」ダイアログを表示するのは面倒に感じることがありますよね。特に、特定のファイル名を自動で設定したい場合、VBA(Visual Basic for Applications)を活用すると便利です。今回は、初心者の方でもわかりやすく、実際の操作例を交えて解説します。

スポンサーリンク

VBAとは?

Wordのイメージ

Wordのイメージ

VBAとは、Microsoft Office製品(WordやExcelなど)に組み込まれているプログラミング言語です。これを使うことで、日常的な作業を自動化したり、カスタマイズしたりすることができます。

「名前を付けて保存」ダイアログを表示する基本コード

まずは、最も基本的なコードをご紹介します。このコードを実行すると、Wordの「名前を付けて保存」ダイアログが表示され、ユーザーが保存先やファイル名を指定できます。

Sub ShowSaveAsDialog()
    With Application.FileDialog(msoFileDialogSaveAs)
        .Title = "保存先を選んでください"
        If .Show = -1 Then
            ' 保存処理を追加する場合はここに記述
        End If
    End With
End Sub

このコードを実行することで、ユーザーが保存先を指定できるダイアログが表示されます。保存処理を追加することで、指定した場所にファイルを保存することができます。

文書内の選択文字列をファイル名に設定する方法

文書内で特定の文字列を選択し、その文字列をファイル名として「名前を付けて保存」ダイアログに自動で反映させることも可能です。以下のコードを使用します。

Sub SaveWithSelectedTextAsFileName()
    Dim selectedText As String
    selectedText = Selection.Text
    With Application.FileDialog(msoFileDialogSaveAs)
        .Title = "保存先を選んでください"
        .InitialFileName = selectedText
        If .Show = -1 Then
            ' 保存処理を追加する場合はここに記述
        End If
    End With
End Sub

このコードを実行すると、文書内で選択した文字列がファイル名として初期設定され、ユーザーが保存先を指定できるダイアログが表示されます。

日付をファイル名に組み込む方法

ファイル名に日付を自動で組み込みたい場合、以下のコードを使用します。

Sub SaveWithDateInFileName()
    Dim dateStr As String
    dateStr = Format(Date, "yyyy-mm-dd")
    With Application.FileDialog(msoFileDialogSaveAs)
        .Title = "保存先を選んでください"
        .InitialFileName = dateStr
        If .Show = -1 Then
            ' 保存処理を追加する場合はここに記述
        End If
    End With
End Sub

このコードを実行すると、ファイル名に本日の日付が自動で設定され、ユーザーが保存先を指定できるダイアログが表示されます。

保存先を特定のフォルダに設定する方法

特定のフォルダにファイルを保存したい場合、以下のコードを使用します。

Sub SaveToSpecificFolder()
    Dim folderPath As String
    folderPath = "C:UsersYourUsernameDocuments"
    With Application.FileDialog(msoFileDialogSaveAs)
        .Title = "保存先を選んでください"
        .InitialFileName = folderPath
        If .Show = -1 Then
            ' 保存処理を追加する場合はここに記述
        End If
    End With
End Sub

このコードを実行すると、指定したフォルダが初期表示され、ユーザーが保存先を選択できるダイアログが表示されます。

よくある質問

Q1: VBAのコードをどこに貼り付ければいいですか?

VBAのコードは、Wordの「開発」タブから「Visual Basic」を選択し、表示されるエディタに貼り付けて実行します。初めての場合は、エディタの使い方を学ぶと良いでしょう。

Q2: マクロを実行するための準備はありますか?

はい、マクロを実行するためには、Wordの設定で「マクロの設定」を「すべてのマクロを有効にする」に変更する必要があります。また、セキュリティの観点から、信頼できるソースからのマクロのみを実行するようにしましょう。

Q3: 保存処理を自動で行いたい場合、どうすれば良いですか?

保存処理を自動で行うには、上記のコード内のコメント部分に保存処理のコードを追加します。例えば、

ActiveDocument.SaveAs2

メソッドを使用して、指定した場所にファイルを保存できます。

まとめ

VBAを活用することで、Wordの「名前を付けて保存」ダイアログを自動化し、作業効率を向上させることができます。初心者の方でも、上記のコードを参考にしながら、自分のニーズに合わせてカスタマイズしてみてください。わからない点やさらに詳しい情報が必要な場合は、お気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

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