Excelで赤字のみ削除するVBAのコードをご教授ください。具体的には、Excelの複数セル内の赤文字のみを削除するためのVBAのコードについて質問です。赤文字の中には-かな-カタカナ-漢字-アルファベット大文字・アルファベット小文字 -全角数字・半角数字 が含まれます。別添の画像の通り「実行前」の状態 → 「実行後」の状態へ 赤字のみ削除し、黒字のみ残すというイメージです。列は全部で1000ほどあり、画像の通り該当部分を選択してマクロを実行するイメージです。下記のコードで、1セル内の1行のみであれば削除できますが、複数行や複数セルを選択した場合、実行しても削除されません。すでに1か月ほど試行錯誤していますが、私の知識ではどうしても解決できません。詳しい方、ご教授いただければ幸いです。-------------------------------------------------------------Sub DeleteRedTextInSelection() Dim cell As Range Dim i As Long ' 選択範囲の各セルを処理 For Each cell In Selection If Not IsEmpty(cell.Value) Then ' 文字単位で色を確認 For i = Len(cell.Value) To 1 Step -1 ' 赤文字判定(RGB値で判定) If cell.Characters(i, 1).Font.Color = RGB(255, 0, 0) Then ' 赤文字を削除 cell.Characters(i, 1).Text = \u0026quot;\u0026quot; End If Next i End If Next cellEnd Sub-------------------------------------------------------------

Excel

1件の回答

回答を書く

1043856

2026-01-28 08:30

+ フォロー

同じ位置で処理するのか、別のセルに出力するのかわかりませんがどちらでも同じような感じ、

G列に展開します。





Sub test()

Dim i As Long, j As Long

Range(\u0026quot;B3:D7\u0026quot;).Copy Range(\u0026quot;G3\u0026quot;)

For i = 3 To 7

For j = Len(Cells(i, 9)) To 1 Step -1

With Cells(i, 9).Characters(j, 1)

If .Font.Color = vbRed Then

.Text = \u0026quot;\u0026quot;

End If

End With

Next

Next

End Sub

うったえる有益だ(0シェアするブックマークする

関連質問

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有