2016-08-30 6 views
0

私はいくつかのスタッフに特定のフィールド/カラムの更新を依頼したスプレッドシートを持っています。私はドキュメントリンクフィールド(列G)を持っています。これらのフィールドは、F:ドライブのフォルダーにリンクしています.F:ドライブは、必要なフィールドの入力に役立ちます。Excelのハイパーリンクの範囲を変更します

私が完了したいスプレッドシートもこのFドライブにあります。しかし、ドキュメントの各リンクが機能しなくなったことに気付きました。ハイパーリンクの編集でリンクを確認すると、 "* F:\ Procurement ..."の代わりに気付きます。 "+ \ NSH-HDRIVES1 ...」、ヘッダとして

  • F:\契約はアルコ... XXXを\ \調達... NSH-HDRIVES1 \契約\

  • \アルコ... XXX ...

これらの行には、「\ NSH-HDRIVES1」を「F:」に置き換えたドキュメントリンクが数百行あります。

私にこれをさせるいくつかの種類のVBAマクロはありますか?私はこの時点でVBAマクロを習得する経験と時間がほとんどないので、どんな助けでも大歓迎です。各リンクは異なるので、F:ドライブ内の別のフォルダに移動します。必要なのはプレフィックスを変更することだけです。

ありがとう、重複して申し訳ありません。

答えて

2

次のコードは役に立ちますが、ActiveSheetでのみ動作するように設定されています。ハイパーリンクが複数のワークブックと複数のワークシートにある場合は、そのすべてをループする必要があります。

For Each h In ActiveSheet.Hyperlinks 
    h.Address = Replace(h.Address, "\NSH-HDRIVES1\", "F:\Procurement\") 
    h.TextToDisplay = Replace(h.TextToDisplay, "\NSH-HDRIVES1\", "F:\Procurement\") 
Next 
+0

Thomas2016 @あなたが追加する必要があるかもしれませんこれも 'h.TextToDisplay =置き換え(h.TextToDisplayを、 "\ NSH-HDRIVES1 \"、 "F:調達\ \")' – Slai

+0

@Slai - 感謝 - 答え更新しました。 – YowE3K

+0

ブリリアント、私はマスターシートを持っています。 – Thomas2016

関連する問題