Application.GetSaveAsFilename メソッド (Excel)

ユーザーからファイル名を取得するために、[名前を付けて保存] ダイアログ ボックスを表示します。ダイアログ ボックスで指定したファイルは、実際には保存されません。

構文

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

expressionApplication オブジェクトを 表す変数。

パラメーター

名前 必須 / オプション データ型 説明
InitialFilename Optional Variant 既定値として表示するファイル名を指定します。 この引数を省略すると、作業中のブックの名前が使われます。
FileFilter オプション Variant ファイルの候補を指定する文字列 (ファイル フィルター文字列) を指定します。 最大長は 255 文字です。それ以外の場合、メソッドはエラー 2015 を返します。
FilterIndex オプション バリアント型 既定のファイル フィルター条件のインデックス番号を 1 から FileFilter で指定したフィルターの数まで指定します。 この引数を省略するか、ファイル フィルター文字列の数より大きい数値を指定すると、最初のファイル フィルター文字列が既定値となります。
Title 省略可能 Variant ダイアログ ボックスのタイトルを指定します。 この引数を省略すると既定のタイトルが使用されます。
ButtonText オプション Variant Macintosh でのみ指定できます。

戻り値

バリアント型

注釈

FileFilter引数で渡されるこの文字列は、ファイルフィルタ文字列のペアとそれに続くMS-DOS ワイルドカードファイルフィルタ指定で構成され、各部分と各ペアはコンマで区切られます。 個別のペアはそれぞれ[ファイルの種類]ドロップダウンリストボックスに表示されます。 たとえば、次の文字列は、テキストと addin という 2 つのファイル フィルターを指定します。

"Text Files (*.txt), *.txt, Add-In Files (*.xla), *.xla"

1 つのファイル フィルター文字列に複数の MS-DOS ワイルドカードの表現を使用するには、"Visual Basic Files (*.bas; *.txt), *.bas;*.txt"のように各ワイルドカードをセミコロン (;) で区切ります。

このメソッドは、ユーザーによって選択、または入力されたファイルの名前とパス名を返します。 引数 MultiSelect が True の場合は、選択されたファイルの名前の配列が返されます。 入力が取り消された場合には False が返されます。

このメソッドを実行することによって、カレント ドライブやカレント フォルダーが変更される可能性があります。

InitialFilename を拡張子で使用し、フィルターを適用する場合、この拡張子はフィルター拡張子と一致する必要があります。一致しない場合、ダイアログ ボックスに表示される有効な InitialFilename は空の文字列になります。

次の使用例は、[名前を付けて保存] ダイアログ ボックスを、ファイルの種類をテキスト ファイルに限定して表示します。 ファイル名を選択すると、そのファイル名がメッセージ ボックスに表示されます。

fileSaveName = Application.GetSaveAsFilename( _ 
 fileFilter:="Text Files (*.txt), *.txt") 
If fileSaveName <> False Then 
 MsgBox "Save as " & fileSaveName 
End If

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。