VBA GetOpenFilename | VBAでGetOpenFilenameメソッドを使用する方法は?

GetOpenFilenameは、FSOの属性でもあるメソッドです。このメソッドは、VBAで使用され、ファイル名を持つ特定のファイルを検索して選択します。このメソッドの重要な要素は、ファイルを開くために提供されるファイル名のパスです。関数でファイル名のパスを渡すか、ファイルパスを提示して選択するようにユーザーに依頼することができます。

Excel VBA Application.GetOpenFilename

特定のファイル名にアクセスする必要がある状況があり、これはVBAコーディングで可能になります。ファイルにアクセスするには、フォルダパス、ファイル名、およびファイル拡張子を指定する必要があります。多くのコーダーは、ファイル名を取得するために、ファイルパスとファイル名を入力するためのオプションとしてVBA入力ボックスを提供します。ただし、これは練習するのに適したオプションではありません。ユーザーの前に入力ボックスを表示すると、ファイルパス、あるフォルダーを別のフォルダーから区切るための円記号、ファイル名、およびファイルの拡張子が常に記憶されるとは限らないためです。 。これにより、ユーザーからの入力が煩雑になり、最後に、小さなスペース文字の間違いがあっても、すべてが台無しになります。最良の方法は、入力ボックスを「GetOpenFileName」と呼ばれるVBAのメソッドに置き換えることです。

この記事では、VBAGetOpenFileNameを使用してエラーなしでファイル名を取得する方法を示します。

GetOpenFilenameはExcelVBAで何をしますか?

VBAの「GetOpenFileName」を使用すると、ユーザーはファイルを開かなくても、作業中のコンピューターからファイルを選択できます。

「GetOpenFileName」メソッドを使用すると、実際にユーザーの前にダイアログボックスを表示して、必要なフォルダー内のファイルを選択できます。「getOpenFileName」は、ファイル名とファイル拡張子とともにファイルの場所をコピーします。

ExcelVBAでのGetOpenFilenameの構文

「GetOpenFilename」メソッドの構文を見てください。

  • ファイルフィルター:この引数では、表示するファイルの種類を指定して選択できます。たとえば、「Excelファイル* .xlsx」と言うと、Excel拡張子「xlsx」で保存されたExcelファイルのみが表示され、他のファイルは表示されません。無視すると、すべての種類のファイルが表示されます。
  • フィルタインデックス:これにより、ユーザーがファイルタイプを選択できるように制限されます。[ファイルフィルター]の下に表示するフィルターの数を一覧表示できます。
  • タイトル:ファイル選択ダイアログボックスのタイトルが表示されます。
  • ボタンテキスト:これはMacintosh専用です。
  • 複数選択:複数のファイルを選択する場合はTRUE、それ以外の場合はFALSE。デフォルト値はFALSEです。

ExcelVBAでのGetOpenFilenameの例

以下は、VBAApplication.GetOpenFilenameの例です。

このVBAGetOpenFilename Excelテンプレートはここからダウンロードできます– VBA GetOpenFilenameExcelテンプレート

ファイル名とパスアドレスを取得するコードを書いてみましょう。

ステップ1:サブルーチンを開始します。

コード:

 Sub GetFile_Example1()End Sub 

ステップ2:変数を文字列として宣言します。

コード:

 Sub GetFile_Example1()Dim FileName As String End Sub 

ステップ3:この変数には、GetOpenFileNameを割り当てます。

コード:

 Sub GetFile_Example1()Dim FileName As String FileName = Application.GetOpenFilename()End Sub 

今のところ、私はすべてのパラメータを無視しました。

ステップ4:メッセージボックスに変数の結果を表示します。

コード:

 Sub GetFile_Example1()Dim FileName As String FileName = Application.GetOpenFilename()MsgBox FileName End Sub 

Now run the code through the excel shortcut key F5 or manually, it will show the below dialogue box to select the file.

I will select any one file and click on ok.

As soon as I select the file I got a message box in VBA like this. It shows the full folder path and selected excel file name along with file extension.

As we can see in the above image we could see all kinds of files. Now I will add the first parameter i.e. File Filter as “Excel Files,*.xlsx”.

Code:

 Sub GetFile_Example1() Dim FileName As String FileName = Application.GetOpenFilename(FileFilter:="Excel Files,*.xlsx") MsgBox FileName End Sub 

Now if I run this code using F5 key or manually, I will see only Excel files with the extension “xlsx”.

Like this, we can use “VBA Application.GetOpenFileName” method to get the folder path along with File Name & extension of the file.