VBAを使用してリンク内の特定のテキストに基づいてExcelのリンクを更新するにはどうすればよいですか? オフィスを利用する2016VBAを使用してリンク内の特定のテキストに基づいてExcelのリンクを更新するにはどうすればよいですか?
私はそれぞれの場所に独立したサーバーを持つ40の場所を持っています。
ファイル名はすべて、各場所で同じで、同じフォルダに保存され、場所名のみが異なります。例えば
:
Store 1\Schedules\2017\04_01_17.xlxb
Store 2\Schedules\2017\04_01_17.xlxb
Store 3\Schedules\2017\04_01_17.xlxb
各場所は、各年の週だけでなく、いくつかの前の年のスケジュールを持っています。
問題は、04_01_17週のデータを取得する場合は、リンクを1つずつ編集して、これらのファイルのそれぞれに到達するマスターリキャップファイルを操作する必要があることです。
ファイル全体を有効にする場合は、リンクされたすべてのファイルを1年全体および数年前にプルし、完了するまでに数時間かかることがあります。
私が探していたのは、リンクに含まれているテキストを要求し、一致したすべてのファイルを取得するVBAコードでした。例
"Contains"
Answer=04_01_17
については
アドバンス
に感謝ブラッド
上記の両方を試しました。それぞれが毎回店舗を変えてポップアップしてくれました。しかし、何も更新されていない、私はすべての場所を通過するために "OK"を40回ヒットする必要があった。私は場所ごとに1つのファイルだけを見ていたテストファイルでこれを実行しました。もし私がマスターファイルでそれを実行したとすれば、ファイル内でいつでもどこにいても "OK"を選択してリンクする必要があると私は信じています。ファイルを更新する必要があるかどうかをファイルが尋ねる方法を探します。 –
例は*の例として提供されています*。あなたは自分の目的のためにコードを適合させることを意図しています。フォローアップのための公式文書へのリンクが提供されています。あなたはリンクを更新する方法を尋ねました - 答えました。あなたはどのリンクを更新する必要があるかをテストする方法を尋ねました。ユーザー入力を取得する方法を知りたい場合は、これを行うさまざまな方法があります。質問3の3になります。これは、回答の2番目の部分で既に部分的に回答しています。テスト文字列。 – Alan
たとえば、ワークシート内のセルに格納された位置を持つことができます。この場合、My_file_nameはセル参照を指します。ワークシートにフォームコントロールを含めることができます。この場合、変数はコントロールをポイントします。入力ボックス(この例ではmsgboxに似ています)を使用して、名前をポップアップして取得することができます。オンザフライでのユーザーのやりとりは複雑な問題であり、これを達成する方法については非常に具体的である必要があります。 – Alan