エクセルマクロで、複数の色付きセルを別シート抽出するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。
複数の色つきセルを別シート抽出
以下のマクロを実行すると、色のついたセルを色ごとにシート分けします。
Sub 色ごとに別シート転記()
Dim Sh1 As Worksheet
Dim Sht_Name As String
Dim LastRow As Long
Dim i As Long
Dim j As Long
'シートを変数へ格納
Set Sh1 = Sheets("Sheet1")
Application.ScreenUpdating = False
'3列分ループ
For j = 1 To 3
'23行分ループ
For i = 1 To 23
Sht_Name = ""
With Sh1.Cells(i, j)
'黄色だったら
If .Interior.Color = 65535 Then
Sht_Name = "黄色"
'緑だったら
ElseIf .Interior.Color = 5287936 Then
Sht_Name = "緑"
'青だったら
ElseIf .Interior.Color = 15773696 Then
Sht_Name = "青"
End If
'色付きセルだったら、別シート転記
If Sht_Name <> "" Then
LastRow = Sheets(Sht_Name).Cells(Rows.Count, 1).End(xlUp).Row + 1
.Copy Sheets(Sht_Name).Cells(LastRow, 1)
End If
End With
Next i
Next j
Application.ScreenUpdating = True
Set Sh1 = Nothing
End Sub
マクロ実行前
「Sheet1」シートにデータが入力してあり、複数色の色付きセルがあります。
マクロ実行後
「Sheet1」シートから色がついているセルのみ抽出し、指定シートに転記します。
色ごとに転記先のシートが異なります。
この記事がお役に立ちますと幸いです。
・【エクセルマクロ】別シート転記を自動処理する方法まとめ
【エクセルマクロ】別シート転記(抽出)を自動化する:超便利20選
...
「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載
リンク