【Excel VBA】ファイル選択ダイアログで「.xlsx」が表示されない


以前、開発プロジェクトで一緒にお仕事をしていた方から、
ExcelVBAのツールに関するこんな相談がありました。

——————————————–
Excelファイルのデータを取り込むツールで、
ファイル選択時のダイアログに
「.xls」ファイルは表示されるけど
「.xlsx」ファイルが表示されないんだけど・・・
——————————————–

おおよその検討はつききましたが、

まずは調査をということで、コードを確認しました。

■問題の事象

sampleフォルダには、確かに「.xlsx」ファイルが存在している

ExcelVBAのツールで、ファイル選択を実行した時、
同じsampleフォルダなのに、表示されるダイアログには
「.xls」ファイルしか表示されていない。

■対処法

例)


VBAで“Application.GetOpenFilename”という
ファイルを開くコードがあります。

Excelで指定のファイルを開く際に
ファイルの種類を選択することができます。

これを、上記のコードで指定しているのですが、
今回ご相談があったツール内では

Application.GetOpenFilename(“Microsoft Excelブック,*.xls”)

と記載されていました。

ここで、拡張子の部分を”*.xls”としてしまうと、「.xls」ファイルしか選べなくなってしまいます。

よって

Application.GetOpenFilename(“Microsoft Excelブック,*.xls?“)

コードを上記に直しました。

.xls”を”.xls?”とすることで、「.xlsx」や「.xlsm」ファイルが
選択肢として表示されるようになります。

結果、無事ファイルが選択できるようになりました。
お役に立てるのは嬉しいことです。

The following two tabs change content below.

KomatsuAsami

これまでIT関連企業、システム開発プロジェクトに多数参画し、事務~PGまで幅広く経験。株式会社ワークスピーディーで、現在、ExcelVBAによるツール開発をメインに従事。
スポンサーリンク
レクタングル(大)
レクタングル(大)

フォローする

スポンサーリンク
レクタングル(大)