ここから本文です

エクセルVBAについて教えてください。 「C:\test」というフォルダにA.csv、B.csv...

nic********さん

2016/10/2613:48:44

エクセルVBAについて教えてください。
「C:\test」というフォルダにA.csv、B.csv、C.csvという名前のCSVフォルダのうち、どれか一つが入っています。

A~C.csv、どれが入っていてもその一つをエクセルのブックとして開くようなマクロを作成したいと思っています。ご教授いただけませんでしょうか。

A.csvを「C:\test」から検索して、なければB.csvを「C:\test」から検索して、なければC.csvを「C:\test」から検索して、見つけたらC.csvを開くといった流れになると思うのですが、VBA初心者で苦戦しています。
よろしくお願いいたします。

補足エクセルは2010です

閲覧数:
41
回答数:
1
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

tn_********さん

2016/10/2614:20:57

まぁ一例ってことで。
こんな感じですかね?

Sub sample()
Const Path As String = "C:\test\" ←フォルダのパス
Dim Filename As Variant

For Each Filename In Array("A.csv", "B.csv", "C.csv") ←ファイル名
If Dir(Path & Filename) <> "" Then
Workbooks.Open (Path & Filename)
Exit Sub
End If
Next Filename

End Sub

あとは必要に応じて直してください。

  • 質問者

    nic********さん

    2016/10/2615:16:01

    早速のご回答ありがとうございます。

    図々しいのは承知ですが以下の内容だとどうなりますでしょうか?

    マクロを組むエクセルのいるフォルダの一つ上の階層のフォルダに
    「A」「B」「C」いずれかのフォルダが一つだけあり、その中にはX.csvというファイルが入っている。
    このときにX.CSVファイルを開きたいのですがこれもArrayを使えば可能でしょうか?
    少しトライしてみたのですが、うまく組めません。
    お手数ですが可能であれば回答をお願いできませんでしょうか。

  • その他の返信(1件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2016/10/26 16:17:21

お教えいただいた内容で解決しました!ありがとうございました。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる