Excelのハイパーリンクを一括削除/解除する方法!基本操作とVBAの処理も!

Excelのハイパーリンクを一括で削除したいときはないでしょうか。

例えば、誤ったハイパーリンクが混在していて、一旦すべて解除したいときなどです。

そんな時に悩むことは、

・Excelのハイパーリンクを一括で削除したいが方法がわからない
・VBAを使いExcelのハイパーリンクを一括で削除したいが方法がわからない

ですよね。

そこで今回は、そんなお悩みを解決する、

・標準機能でシート内のハイパーリンクを一括削除する方法
・VBAでExcelのハイパーリンクを一括削除/解除する方法

についてご紹介します!

基本操作:シート内のハイパーリンクを一括削除する

Excel2010から複数のハイパーリンクを削除できるようになりましたので、
まずは基本操作編として、標準機能でハイパーリンクを一括削除する方法について説明をします。

①ハイパーリンクを削除したいセルを選択する

ハイパーリンクを削除したいセルの範囲を選択します。

②右クリックでハイパーリンクを削除する

右クリックし、メニューから「ハイパーリンクの削除」を選択します。

すると、

はい、ハイパーリンクが削除されましたね!

excelのハイパーリンクが削除できない場合の原因と対処法

excelのハイパーリンクが削除できない場合がまれにあります。

ハイパーリンクをまとめて削除しても、


一部が残ってしまいます。

その原因と対処法について説明をします。

原因

原因はハイパーリンクの書式のみが残り、ハイパーリンクとして認識されないためです。

対処法

対処法はハイパーリンクの書式をクリアするようにします。

対象セルを選択し、
「ホーム」タブの編集グループにある「クリア」のアイコンをクリックし、
「書式のクリア」をクリックします。

はい、ハイパーリンクの書式がクリアされましたね。

ハイパーリンクを削除するVBA

VBAを使いハイパーリンクを一括削除する方法について説明をします。

サンプルデータは基本操作と同じものを利用します。

サンプルコードは以下の通りです。

Sub ハイパーリンクを一括削除する()
    Dim objHyperlink As Hyperlink
    
    '選択したハイパーリンクを1件づつ処理します。
    For Each objHyperlink In Selection.Hyperlinks
        'ハイパーリンクを削除します。
        objHyperlink.Delete
    
    Next

End Sub

VBAの説明

Selectionプロパティでは、選択している範囲をオブジェクトとして取得します。

Selection.Hyperlinks

例えば、A1セルを選択していればSelectionプロパティはRange(“A1”)となり、
A1~A5のセル範囲を選択していればSelectionプロパティはRange(“A1:A5”)を指すことになります。

そのSelectionプロパティから取得したオブジェクト郡を、ForEachで一件づつ取り出します。

For Each objHyperlink In Selection.Hyperlinks

Deleteメソッドでハイパーリンクを削除します。

objHyperlink.Delete

VBAを登録する

VBAを登録しましょう。

①[Alt] + [F11]を押下してVBAのコンソールを開きます。

②標準モジュールを追加します。
左ペインのVBAProjectを右クリックし、「挿入」、「標準モジュール」を選択します。

③右ペインのウインドウに上記のマクロをコピペします。

はい、ここで登録完了です。

VBAを実行する

続いて登録したVBAを実行し、ハイパーリンクを一括削除していきます。

①ハイパーリンクを解除したいセルを複数選択します。

②[開発]タブ、[マクロ]を押下してマクロ一覧画面を開きます。

③「ハイパーリンクを一括削除する」を選択し、「実行」をクリックします。

はい、ハイパーリンクが解除できましたね。

 

VBAをボタンから実行する

次にいちいちタブからマクロを実行するのは少々面倒ですので、

登録したマクロをボタンから実行するようにしましょう。

①「開発」タブ>「挿入」>左上のボタンをクリックします。

②マクロを登録します。「ハイパーリンクを一括削除する」を選択し、「OK」をクリックします。

②はい、挿入されましたね。
ボタンの名称やサイズも変えましょう。

③ハイパーリンクにしたいセルを選択し、ボタンを押してみましょう。

はい、前と同様にハイパーリンクが一括削除できましたね。

部分選択した箇所のハイパーリンクを削除する

部分選択した箇所のハイパーリンクを削除してみましょう。

Ctrlキーを押しながら削除したいセルを複数選択します。

マクロを実行します。

はい、部分選択した箇所だけハイパーリンクが削除されましたね。

 

さいごに

いかがでしょうか。

今回は、

・標準機能でシート内のハイパーリンクを一括削除する方法
・VBAでExcelのハイパーリンクを一括削除/解除する方法

についてご紹介しました。

ハイパーリンク設定は現場で使う機会が多いかと思いますので、

是非今回の方法で時短していただければと思います。



この記事の関連キーワード

こちらの記事の関連キーワード一覧です。クリックするとキーワードに関連する記事一覧が閲覧できます。








コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です