• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAによるファイルの起動について)

VBAによるファイル起動方法とファイル数増加時の対応について

このQ&Aのポイント
  • VBAを使用してファイルを起動する方法と、ファイル数が増えた際の対応について質問があります。
  • 現在、ファイルAにマクロを作成し、ファイルAのパスを取得しています。次に、ファイルBを開き、ファイルAのパスでフィルタをかけ、それに対応するファイル名を取得しています。
  • しかし、今後ファイルCの数が増加することが予想されるため、ファイル数の増減に簡単に対応できるようにするために、ファイルBを作成してメンテナンスを行えば良いのではと考えています。しかし、この方法でファイルCを起動することは可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

>今後起動する”ファイルC”の数が増えることが予想され、メンテナンスの面から 質問の意図が良くわかりませんが、メインテナンスの目的もわかりません。 自動的にファイル数が増えるなら、増加に合わせて日付連番などにして、保存や後利用(何かのキーからファイル名を自動的に決定する等)可能な名前にするのも良いでしょう。 セルに書かれた名前のファイルを開くなら簡単です。 >ファイルAに起動するファイル名を書いておき、起動することはわかるのですが、 任意のセルの値を読み込んで、ファイル名として渡せばよいことですが? Path = thisworkbook.path & "\" F_name = Range("C3") workbook.open Path & F_name (タイプミスがあるかも)

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • WWolf
  • ベストアンサー率26% (51/192)
回答No.3

VBAで作るのも悪くはないのですが、ハイパーリンクを使ったほうがシンプルであるのと後々に応用が利きやすいと思いますよ。 フィルターをどうしてもかけたいのであれば例えばC列にハイパーリンクを貼りD列に関数を使ってにては? 質問自身の回答ではないのですが、#1#2さん同様そのような管理という意味は理解はするのですが、メンテや管理というなら方法論としては意図が理解しにくいです。 多分質問者さんのしたいことはVBAでなくとも可能であると思いますよ。

すると、全ての回答が全文表示されます。
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

解りづらいですね。 なぜBファイルが必要なのかも良く解りません。 基本的には開きたいファイルのフルパスを作ってやれば良いだけなので、やりたい事は可能だと思いますが。 例えばファイルAにマクロを書き、同じフォルダに置いたExcelファイル全てに処理をするというような運用ではダメなのでしょうか? 1.下記のようなマクロを書いたファイルを適当なフォルダに保存 2.同じフォルダに処理したいExcelファイルを置く 3.マクロを実行 Sub test1() Dim myFile As String, myPath As String  myPath = ThisWorkbook.Path & "\"  myFile = Dir(myPath & "*.xls", vbNormal)  Do While myFile <> ""    If myFile <> ThisWorkbook.Name Then     MsgBox myPath & myFile     ' Workbooks.Open myPath & myFile    End If    myFile = Dir  Loop End Sub

nabeo1
質問者

お礼

説明が不十分で申し訳ありません。 依頼者からの意図を充分把握しないで 作成しているので、自分でも整理できていない所 があったのかもしれません。 質問をする際には、わかりやすいように努めます。

すると、全ての回答が全文表示されます。

関連するQ&A