プチIT化 PR

【Excel】ハイパーリンク削除、罫線などの書式が消える時の対処

記事内に商品プロモーションを含む場合があります。
当サイトは、アフィリエイト広告を利用しています。

こんにちは、わたあめです。

ExcelでメールアドレスやWEBページのURLを入力した時、下線が付いてリンク形式に自動的になりますよね。これはハイパーリンクと言い、他のファイルの場所やURLへExcel上からクリックひとつで簡単にアクセスできて便利な機能の一つです。

ただ、この機能を使いたくない時もあり、ハイパーリンクの削除を行うと…

悩める人
悩める人
ハイパーリンクを削除する時にセルの書式設定が消えてしまう!

という事が起こることに気付きました。セルの罫線や文字色など書式設定が消えてしまうので、折角設定した色などが消えてしまいました。

今回の記事では、ハイパーリンク削除時に書式設定を消さないにはどうしたら良いか?をまとめてみました。それでは、いってみましょう!

ハイパーリンクの下線と青色文字の書式設定を一気に削除する

ブック全体のハイパーリンクの下線と青い文字色の書式を一気に削除するには以下の手順です。

  1. [ホーム]タブ > [スタイル]欄 > [セルのスタイル]をクリック
  2. [ハイパーリンク]を右クリック > [削除]を選択

ただし、シートや選択した範囲のみということは出来なかったです。また、この方法は書式は消えて、見た目はリンクが無いように見えますがハイパーリンク自体は残りました。(クリックしたらリンク先へ飛びます。)

悩める人
悩める人
ハイパーリンク自体も削除するにはどうすれば?

VBAマクロになってしまいますが、出来たので次章で紹介しておきます。

書式を残したままハイパーリンクを完全に削除するVBAマクロ

スタイルに登録されているハイパーリンクの書式(下線、青色文字)と、選択しているシートのハイパーリンクを削除するマクロサンプルです。※スタイルはシート全てから削除、ハイパーリンク削除は選択しているシートのみとなります。

Sub deleteHyperLink()

  ' アクティブなシートのセルを全選択
  Cells.Select
  ' ハイパーリンクを削除する
  Selection.ClearHyperlinks
  ' ハイパーリンクの書式を削除する
  ActiveWorkbook.Styles("ハイパーリンク").Delete

End Sub

シート全てのハイパーリンクを削除したい場合は存在するシート分ループさせる、シート全体でなく範囲指定したい場合はSelectする範囲を指定する、などアレンジ次第で思った通りの削除対象が指定できるかなと思います。

ハイパーリンクに勝手になることを予め防止する

ハイパーリンクが自動的に作成されてしまうのがそもそもの原因だと考えるならば、このハイパーリンクを自動的に作成されないような設定をすることもできます。事前に予防するという考えです。

手順は以下の通りです。

  1. [ファイル]タブ > [オプション]
  2. 左側の[文書校正]を選択 > [オートコレクトのオプション]ボタンをクリック
  3. [入力フォーマット]タブをクリック > [インターネットとネットワークの~~ハイパーリンクに変更する]のチェックを外す

このチェックを外すことで、オート(自動)でハイパーリンクにしないという設定ができましたよ!実際に、入力したあとEnterを押してもいつもできるリンクは作成されませんでした。

さいごに

いかがだったでしょうか。ハイパーリンクを削除する時に、青文字と下線の書式だけでなく書式すべてを削除するという作りになっているんだろうなというところですかね。同じ疑問を持たれた方の参考になれば幸いです。それでは、また!