一発で済む!Excelブック内のハイパーリンクのリンク先アドレスを一括置換する方法
Excelブック内にある複数のハイパーリンクのリンク先アドレスを一括で置換したい場合、手動で一つずつ変更するのは面倒ですよね。そんなとき、VBAを活用することで効率的に一括置換が可能です。この記事では、Excelブック内のハイパーリンクのリンク先アドレスを一括置換する方法をVBAを使って解説します。
VBAコードを用意する
以下のVBAコードを使って、Excelブック内のハイパーリンクのリンク先アドレスを一括置換できます。
Sub ReplaceHyperlinkAddressesInExcel()
Dim ws As Worksheet
Dim hLink As Hyperlink
Dim oldAddressPart As String
Dim newAddressPart As String
' 検索文字列の入力を求める
oldAddressPart = InputBox("検索文字列を入力してください(例:http://)", "検索文字列")
If oldAddressPart = "" Then Exit Sub
' 置換文字列の入力を求める
newAddressPart = InputBox("置換文字列を入力してください(例:https://)", "置換文字列")
' ワークシートごとにループ
For Each ws In ActiveWorkbook.Worksheets
' ハイパーリンクごとにループ
For Each hLink In ws.Hyperlinks
' ハイパーリンクのアドレスを置換
If InStr(1, hLink.Address, oldAddressPart) > 0 Then
hLink.Address = Replace(hLink.Address, oldAddressPart, newAddressPart)
End If
Next hLink
Next ws
MsgBox "ハイパーリンクのリンク先アドレスの置換が完了しました。", vbInformation, "置換完了"
End Sub
このコードは、Excelブック内のすべてのワークシートにあるハイパーリンクのリンク先アドレスを一括置換します。操作手順は以下の通りです。
手順1:VBAエディタを開く
ExcelでVBAエディタを開きます。エディタを開くには、「Alt」キーと「F11」キーを同時に押してください。
手順2:VBAコードを貼り付ける
VBAエディタで「挿入」メニューから「標準モジュール」を選択し、新しいモジュールが開いたら、先ほどのVBAコードを貼り付けてください。貼り付けたらVBAエディタを閉じワークシートへ戻ります。
手順3:VBAコードを実行する
VBAコードを実行するには、Excelのワークシート上で「Alt」キーと「F8」キーを同時に押して、マクロのダイアログボックスを表示します。ダイアログボックスから「ReplaceHyperlinkAddressesInExcel」というマクロを選択し、「実行」ボタンをクリックします。
手順4:検索文字列と置換文字列を入力する
検索文字列の入力ダイアログが表示されたら、置換したいリンク先アドレスの一部を入力します(例:http://)。その後、置換文字列の入力ダイアログが表示されるので、新しいリンク先アドレスの一部を入力してください(例:https://)。
入力が完了すると、VBAコードが実行され、Excelブック内のすべてのハイパーリンクのリンク先アドレスが一括置換されます。最後に、「ハイパーリンクのリンク先アドレスの置換が完了しました。」というメッセージが表示されるので、「OK」ボタンをクリックして完了です。
まとめ
今回ご紹介したVBAコードを使えば、Excelブック内のハイパーリンクのリンク先アドレスを簡単に一括置換できます。作業効率をアップするために、ぜひこの方法を活用してみてください。
コメント
面倒な編集が一括で出来て感動しました
ありがとうございました
助かりました。
感謝、感動、感激!!
本当にありがたいです。感謝いたします(^^)