- ベストアンサー
Excel 2007 マクロ セルの色のカウント
Excel 2007 マクロ セルの色のカウント 表に複数の色がセルについています。 色がついているセルの隣の列に「1」を返したいです。 どのようなマクロになりますでしょうか。 色がついている列は1行でC列になります。 ご回答よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>色がついている列は1行でC列になります。 C列に一箇所しかないということでしょうか。 一箇所の場合 Sub Macro1() For i = 1 To Rows.Count If Range("C" & i).Interior.ColorIndex <> xlNone Then Range("D" & i) = 1 Exit For End If Next i End Sub 複数箇所の場合 (C列にデータが入力されているのが前提ですが) Sub Macro1() For i = 1 To Cells(Rows.Count, 3).End(xlUp).Row If Range("C" & i).Interior.ColorIndex <> xlNone Then Range("D" & i) = 1 End If Next i End Sub ではどうでしょうか。
その他の回答 (1)
- ka_na_de
- ベストアンサー率56% (162/286)
一例です。 Sub test() Dim myRange As Range Dim c As Range Set myRange = Intersect(ActiveSheet.UsedRange, Columns("C")) myRange.Offset(, 1).ClearContents For Each c In myRange If c.Interior.ColorIndex <> xlNone Then c.Offset(, 1).Value = 1 End If Next c Set myRange = Nothing End Sub
お礼
ご回答ありがとうございます。参考にさせて頂きます。
お礼
早い回答ありがとうございます。シンプルなマクロで非常に助かります。うまくいきました。