いつもお世話になっております。
ExcelのVBAで、ハイパーリンクを削除すると、一緒に書式もクリアーされてしまいます。
罫線と、背景色を残す方法ってあるのでしょうか?
一応、背景色だけ保存しておいて、後で、復帰させようと考えましたが、罫線も一時待避させるとなると、ちょっと大げさになるので、何か?知恵をお借り出来ないでしょうか?
Private Sub CommandButton11_Click()
'リンク解除
Dim MyColor As Integer
MyColor = maillist.Range("メールアドレス").Range"A1").Interior.ColorIndex
maillist.Range("メールアドレス").Hyperlinks.Delete
maillist.Range("メールアドレス").Interior.ColorIndex = MyColor
End Sub
"メールアドレス"範囲を別の所にコピーしておき、値だけ削除して元に戻して・・・なども考えてみましたが・・・?←これは、余計かも?
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
こんにちは。
> "メールアドレス"範囲を別の所にコピーしておき、値だけ削除して元に
> 戻して・・・
仕様から見れば、元に戻すのは書式の方が都合が良いでしょう。
ただ、PasteSpecial で書式を戻すとしても複数のセルブロックが選択された
状態が想定できますから、PasteSpecial をエラーなく実行するためには、
Areas プロパティーで選択ブロック毎の処理になると思います。完全に一括で
はありませんが、止むを得ないかと...
' // 書式を残したままハイパーリンクを一括削除
Sub DeleteHyperLinks()
If Not TypeOf Selection Is Range Then Exit Sub
If Selection.Hyperlinks.Count = 0 Then Exit Sub
Dim wb As Workbook
Dim sh As Worksheet
Dim rTarget As Range
Dim r As Range
Application.ScreenUpdating = False
Set rTarget = Selection
Set wb = Workbooks.Add
Set sh = wb.Worksheets(1)
For Each r In rTarget.Areas
If r.Hyperlinks.Count > 0 Then
r.Copy Destination:=sh.Cells(1)
r.Hyperlinks.Delete
With sh.Cells(1).Resize(r.Rows.Count, r.Columns.Count)
.Copy
r.PasteSpecial xlPasteFormats
.Clear
End With
End If
Next
Set rTarget = Nothing
Set sh = Nothing
wb.Close SaveChanges:=False
Set wb = Nothing
End Sub
No.3
- 回答日時:
こんにちは
こんな感じのことだと思うのですが・・・
Dim vntB
With Range("メールアドレス")
vntB = .Formula
.ClearContents
.Formula = vntB
'.Font.ColorIndex = xlColorIndexAutomatic
'.Font.Underline = xlUnderlineStyleNone
End With
Range("メールアドレス") が矩形範囲であることが条件です。
(それ以外なら、ループにして下さい。)
コメントにした部分は、どうしたいか判らないので仮にしていますが、
このままだと、見た目上、リンクが残っているみたいになるので、
何かしら工夫して下さい。
(書式を)いじらない方向で書いても、結局いじる必要があるみたいですね。
わりと攻め込んだコードです。バックアップをお願いします。
No.1
- 回答日時:
こんばんは。
コードとしては、よく分からないし、maillist って、シート名だとしたら、CommandButton とは、違うシートでしょうか?
maillist.Hyperlinks.Delete
このように一括でするとなると、それを、一旦、Range をどこかに確保しなければならないから、結果的には、最初は一括でしても、後が、一括では出来そうな気がしません。
ひとつずつ、以下のようなコードにすればよいと思います。
Hyperlinkから、ただの、Range への切り替えをします。ただ、以前のバージョン(2000)は、Hyperlinkオブジェクトを削除しても色が残った気がします。今は、色と下線は、仮にオブジェクトのRangeにつけても、Hyperlink の削除とともに消えるようですね。
Sub Test1()
Dim v As Variant
Dim r As Range
For Each v In ActiveSheet.Hyperlinks
Set r = v.Range
v.Delete
r.Font.Underline = xlUnderlineStyleSingle
r.Font.ColorIndex = 5
Next v
Set r = Nothing
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ハマっている「お菓子」を教えて!
この世には、おいしいお菓子がありすぎて……。 次何を食べたらいいか迷っています。 みなさんが今、ハマっている「お菓子」を教えてください!
-
家・車以外で、人生で一番奮発した買い物
どんなものにお金をかけるかは人それぞれの価値観ですが、 誰もが一度は清水の舞台から飛び降りる覚悟で、ちょっと贅沢な買い物をしたことがあるはず。
-
ホテルを選ぶとき、これだけは譲れない条件TOP3は?
ホテルを探す時、予約サイトで希望条件の絞り込みができる便利な世の中。 あなたは宿泊先を決めるとき「これだけは譲れない」と思う条件TOP3を教えてください。
-
ちょっと先の未来クイズ第4問
11月ごろに発表される、2024年の「新語・流行語大賞」にノミネートされる言葉を書けるだけ書いてください。
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
ExcelVba 有効なセルかどうかを判定するには
Visual Basic(VBA)
-
エクセルVBAで、とびとびのセルの順次選択方法?!
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのセルにユーザー名...
-
LINE TCBというところからLINE...
-
ユニクロやGUのシフト管理アプ...
-
インスタの乗っ取り解除につい...
-
「@」(アットマーク)の無いメ...
-
インスタの捨て垢で友達のスト...
-
iPhoneのiCloudメールなよです...
-
CSVファイルを添付するときにパ...
-
メールエラー
-
メールアドレスで上付きのハイフン
-
今日インスタ(Instagram)を開い...
-
携帯電話を解約してもSMSの受信...
-
メールアドレス 上バーの入力...
-
存在しないアドレスにメールを...
-
メールを返信したら、英語のメ...
-
メールのマナー編
-
Outlookで、メールを他...
-
エクセルで複数ファイルに同一...
-
runas実行した時にきかれるパス...
-
YouTubeが毎回ログインしないと...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユニクロやGUのシフト管理アプ...
-
Excelのセルにユーザー名...
-
iPhoneのiCloudメールなよです...
-
YouTubeが毎回ログインしないと...
-
LINE TCBというところからLINE...
-
インスタの捨て垢で友達のスト...
-
「@」(アットマーク)の無いメ...
-
インスタの乗っ取り解除につい...
-
メールアドレスで上付きのハイフン
-
メールのマナー編
-
メールを返信したら、英語のメ...
-
携帯電話を解約してもSMSの受信...
-
メールアドレス 上バーの入力...
-
存在しないアドレスにメールを...
-
メールアドレスを人に教えるの...
-
verify@twitter.comから、メー...
-
CSVファイルを添付するときにパ...
-
YahooIDをパスワード形式にした...
-
「そのメールアドレスはすでに...
-
星の王子さまというアプリで、 ...
おすすめ情報