dポイントプレゼントキャンペーン実施中!

A列とB列に文字が入っているのですが、A列のセルが黄色の場合だけ、そのAとBの文字を残したいです。
VBAのコードを教えて下さい。

例えば
A1 犬 B1 タロウ
A2 猫 B2 ニャン
A3 人 B3 甚平
A4 獣 B4 ジョーズ
とデータがあり
A2とA4のセルの色が黄色の場合
A2 猫 B2 ニャン
A4 獣 B4 ジョーズ
としたいです。

実際、データは、A3080まであります。

A 回答 (1件)

こんにちは!



行ごと削除してもよいのですね?
色々やり方はあると思いますが、一例です。

Sub Sample1()
Dim c As Range, myRng As Range
For Each c In Range("A1:A3080")
If c.DisplayFormat.Interior.ColorIndex <> 6 Then
If myRng Is Nothing Then
Set myRng = c
Else
Set myRng = Union(myRng, c)
End If
End If
Next c
If Not myRng Is Nothing Then
myRng.EntireRow.Delete
End If
End Sub

※ 条件付き書式にも対応できるように「DisplayFormatオブジェクト」を使っていますが、
手作業で「黄色」に塗りつぶされているのであれば
>If c.DisplayFormat.Interior.ColorIndex <> 6 Then

>If c.Interior.ColorIndex <> 6 Then
だけで大丈夫だと思います。m(_ _)m
    • good
    • 1
この回答へのお礼

ご回答有難う御座います。
出来ました。

お礼日時:2016/10/28 14:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!