Application.GetSaveAsFilename メソッド (Excel)

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

構文

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

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

パラメーター

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

戻り値

バリアント型

注釈

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