VBA 名前を付けて保存ダイアログ表示方法 - Excel ホームページ制作 | 墨田区

VBA 名前を付けて保存ダイアログ表示方法 – Excel

LINEで送る
Pocket

VBAで「名前を付けて保存」ダイアログを表示する方法をご紹介します。

「名前を付けて保存」ダイアログとは、下図のようなファイル名を指定して保存するダイアログのことです。
名前を付けて保存ダイアログ
これを VBA で表示する方法をご紹介します。
※環境は Excel 2010 で検証しました。




【PR】マジか?!「アレ」してるLINEスタンプっていったい・・・


「名前を付けて保存」ダイアログ表示方法

表示するには Application.GetSaveAsFilename メソッドを利用します。


GetSaveAsFilename(InitialFilename, FileFilter, FilterIndex, Title, ButtonText)


パラメーター

名前必須データ型説明
InitialFilename×Variant既定値として表示するファイル名を指定します。この引数を省略すると、作業中のブックの名前が使われます。
FileFilter×Variantファイルの候補を指定する文字列 (ファイル フィルター文字列) を指定します。
FilterIndex×Variant引数 FileFilter で指定したファイル フィルター文字列の中で、1 から何番目の値を既定値とするかを指定します。この引数を省略するか、ファイル フィルター文字列の数より大きい数値を指定すると、最初のファイル フィルター文字列が既定値となります。
Title×Variantダイアログ ボックスのタイトルを指定します。この引数を省略すると既定のタイトルが使用されます。
ButtonText×VariantMacintosh でのみ指定できます


戻り値

バリアント型 (Variant)


サンプルソース

Sub Macro1()
    Dim FileName As Variant
    FileName = _
        Application.GetSaveAsFilename( _
             InitialFileName:=ThisWorkbook.Name _
           , FileFilter:="Excel マクロ有効ブック(*.xlsm),*.xlsm" _
           , FilterIndex:=1 _
           , Title:="保存先の指定" _
           )
    If FileName <> False Then
       Application.DisplayAlerts = False
       ThisWorkbook.SaveAs FileName:=FileName, FileFormat:=xlNormal
       Application.DisplayAlerts = True
    End If
End Sub

VBA で「名前を付けて保存」ダイアログ表示するということは、ファイルの種類は「マクロ有効ブック」ということになります。
そのため FileFilter パラメータに *.xlsm を指定しています。

戻り値は、ダイアログの「保存」ボタンを押下すれば指定したファイルのフルパスが返り、「キャンセル」ボタンを押下すれば False が返ります。


参考サイト

Application.GetSaveAsFilename メソッド (Excel)


おつかれさまでした。

LINEで送る
Pocket

この記事がお役に立ちましたら シェア をお願いいたします。

コメントを残す

コメント(必須)

お名前 (必須)
メールアドレス
(アドレスは公開されません)

Trackback URL