私は、とりわけ、いくつかのセル内の外部ファイルリンクを更新するマクロを作成しようとしています。現在、セル内のファイルの場所と変更先のファイルの場所は別のタブのユーザーによって指定されています。VBA Excel:ユーザーセル入力を使用してリンクを編集するにはどうすればよいですか?
私はfind/replaceでこれを試みました。
Range("b3").Formula = Replace(Range("B3").Formula, "\\folder\file", "\\folder\newfile")
次に、このテキストが置き換えられ、リンクが正しく更新されます。また、これはうまく動作
oldlocation= "\\folder\file"
newlocation= "\\folder\newfile"
Range("b3").Formula = Replace(Range("B3").Formula, oldlocation, newlocation)
:私は入力して場所を変更した場合、oldlocationとnewlocationを言います。私は場所の定義(:「\フォルダ\ファイル」例えばB3):変更した場合でも、それはもはや作品
oldlocation= Range("b3").text
newlocation= Range("b4").text
を - 変更なし、またはエラーとコードの行の上を通過。私は素早くチェックし、の範囲( "b3")を指定してください。 & "\ folder \ file"は両方ともテキスト文字列のようです。その後、私は困惑する。私は見つけたいくつかの異なる検索/置換フォーマットを試しましたが、すべて同じ結果を得ました。私は何が欠けていますか?
replaceコマンドの前にDebug.Printの古い場所newlocationを追加して、実際に読み取った内容を確認してください。たぶん.textの代わりに.valueを試してみませんか? str()関数を使用して、必要に応じて文字列としてキャストすることができます。 – SgtStens