※ ChatGPTを利用し、要約された質問です(原文:Excel2000 ハイパーリンクを削除するマクロ)
Excel2000でハイパーリンクを削除する方法マクロ
このQ&Aのポイント
Excel2000でURLやメールアドレスが勝手にハイパーリンクになる問題を解決するためのマクロを作成したい。
マクロを使用して、指定したセルの書式を保持し、ハイパーリンクを削除する処理を行う方法についてのアイデアを求めています。
具体的な手順として、セルが変更される度に指定した範囲のハイパーリンクを削除し、特定の書式に戻す処理を実行していますが、異なる書式のセルで同じマクロを使用すると書式が乱れてしまいます。解決策として、ハイパーリンクを削除する前のセルの書式を保存し、削除後に復元する方法を求めています。
Excel2000 ハイパーリンクを削除するマクロ
どなたか教えてください。
Excel2000で、URLやメールアドレスを入力すると勝手にハイパーリンクにされてしまいます。
これをハイパーリンクとならないようにするマクロを作りたいのです。
具体的には、特定のセルにだけ、URLやメールアドレスを入力する可能性が
あるという条件で、
下記のようにしました。
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
nowcell = ActiveCell.Address
Target.Hyperlinks.Delete
With Range("O14:AI14,L41:AI41")
.IndentLevel = 1
.VerticalAlignment = xlCenter
.Font.Name = "Arial"
.Font.Size = 16
End With
Range(nowcell).Activate
Application.ScreenUpdating = True
End Sub
セルが変更されるたびに、O14:AI14,L41:AI41のハイパーリンクを削除して、勝手に
変更された書式を特定の書式に戻すという処理をしています。
ただ、特定の書式を設定しているため異なる書式のセルに同じマクロを使うと、
書式が乱れてしまいます。
それで、ハイパーリンクが削除される前のセル書式を保存しておいて、ハイパーリンクを削除した後に、
復元するということをしたいのですが、どうすればよいでしょうか?
イメージ的には、
org_format=target.font
nowcell.font=org_format
というようにしたいところなのですが・・・
良いアイデアをご教授ください。
宜しくお願い致します。
お礼
ありがとうございます! undoで実現できました。 こんなに簡単な方法でできるとは、気がつきませんでした。 目から鱗です。 助かりました!