- ベストアンサー
エクセル マクロで特定ファイル名だけを開く
エクセルのマクロで 特定のファイル名だけをフォルダの中から探して 開くというものを作りたいのですが うまくできません。 フォルダを指定して 「060927.xls」というエクセルファイルだけを 開きたいのですが この日付のところが毎日変わるので 「06XXXX.xls」というような 最初が06であと4つの文字が入ってるファイル名だけを 流動的に指定できるようにするには どのようなVBAマクロにすればよいのでしょうか? とても困っています。 是非教えてください!宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Set objFs = CreateObject("Scripting.FileSystemObject") Set objFld = objFs.GetFolder(sPath) For Each objFl In objFld.Files If Len(objFs.GetBaseName(objFl.Path)) = 6 And Left(objFl.Name, 2) = "06" Then 'ここに処理 End If Next とか。
その他の回答 (2)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 単に、開くだけなら、これでよいと思います。 もちろん、開いたブックは、ActiveBook です。つまり、マルチセレクトするのは、ちょっと面倒です。 「06XXXX.xls」という場合。 Sub OpenSesame() Const PRESTR As String = "06?????" With Application.Dialogs(xlDialogOpen) .Show (PRESTR & ".xls") End With End Sub
お礼
お礼が遅くなり申し訳ありませんでした。 私が開きたいファイルが共通サーバーの中に存在しており それを指定するやりかたがわからずに 折角教えて戴いたのですが上手くうごきません。 もう少し勉強してみます。 本当にありがとうございました。
- akina_line
- ベストアンサー率34% (1124/3287)
こんにちは。 Dir関数を利用して、ファイルの指定を"06????.xls"としてはどうでしょう。 詳細の文法はVBAのヘルプをご参照ください。 では。
お礼
お礼が遅くなりました。 ありがとうございました。
お礼
お礼が遅くなり申し訳ありませんでした。 私の知識では教えていただいたものを 貼り付けて実行するだけしか出来ず、 うまくできませんでした。 参考にさせて頂き勉強してみます。 本当にありがとうございました。