Excelにおいて上セルと同じ入力値であるセルに背景色を付けます.
表を校正するときに見るところを減らせるシンプルなマクロです.

目次

  1. 使い方
  2. マクロ
  3. バリエーション
    1. 空白セルに上セルと同じ値を入れるVBAマクロ

使い方

検出を行う列を選択し,そこでマクロを実行します.
上セルと同じ入力値であるセルにはセル背景色が付きます.

スペックなどでは非常に似た文字列が上下のセルに並ぶことがあります.どのセルまで同じであるか明らかにすることで,「上のセルと同じだと思った」という校正ミスを防ぐことができます.

列を範囲選択することもできます.

上セルと同じ文字列なので緑に塗られた

マクロ

マクロは下のコードです.

Sub 選択列において上行と同じならセル背景色を入れる()

Dim i, j As Long
j = Selection(1).Column

If Cells(1, j).SpecialCells(xlLastCell).Row < 2 Then
End
End If

For i = 1 To Cells(1, j).SpecialCells(xlLastCell).Row
For j = Selection(1).Column To Selection(Selection.Count).Column
If Cells(i, j) = Cells(i + 1, j) Then
Cells(i + 1, j).Interior.Colorindex = 43
End If
Next j
Next i

End Sub

バリエーション

空白セルに上セルと同じ値を入れるVBAマクロ

次のマクロは,セルが空白の時に上セルと同じ値を入力します.
こちらは原稿整理で利用できます.

Sub 選択列において空白セルなら上に倣って入れる()

Dim i, j As Long
j = Selection(1).Column

If Cells(1, j).SpecialCells(xlLastCell).Row < 2 Then
End
End If

For i = 2 To Cells(1, j).SpecialCells(xlLastCell).Row
For j = Selection(1).Column To Selection(Selection.Count).Column
If Cells(i, j) = "" Then
Cells(i, j) = Cells(i - 1, j)
End If
Next j
Next i

End Sub

セルが空白の時に左セルと同じ値を入力するものはこちらです.

Sub 選択行において空白セルなら左に倣って入れる()

Dim i, j As Long
i = Selection(1).Row

If Cells(i, 1).SpecialCells(xlLastCell).Column < 2 Then
End
End If

For j = 2 To Cells(i, 1).SpecialCells(xlLastCell).Column
For i = Selection(1).Row To Selection(Selection.Count).Row
If Cells(i, j) = "" Then
Cells(i, j) = Cells(i, j - 1)
End If
Next i
Next j

End Sub