マスタにあるキーワードがあったらセルを青色にするよ
この説明は、ChatGPTで作成しています。
このプロシージャは、特定の作業用ブック内で「マスター」シートに記載されているキーワードを基に、現在選択しているシート(アクティブシート)の列Aにある内容を検索し、一致するセルを青色にするものです。以下で、わかりやすく説明しますね。
プログラムの仕組み
「マスター」シートのキーワードを取得する
「マスター」シートの列Aに記載されているすべてのキーワードを読み取り、それを配列として保存します。
この配列は後の検索に使われます。
検索と色付け
アクティブシート(現在表示しているシート)の列Aを検索対象にして、キーワードが含まれるセルを探します。
見つかったセルに対して、そのセルの背景色を青色(vbBlue)に設定します。
検索処理の繰り返し
キーワードごとにセルの検索を行い、同じキーワードが複数のセルに存在する場合でも、すべて青色にします。
通知メッセージ
処理が完了すると「チェック完了!」というメッセージが表示されます。
ポイント
マスターのキーワード
「マスター」シートの列Aにキーワードを1行ずつ記入します。このキーワードを基に他のシートの内容を検索します。対象シートの指定
キーワード検索を行うのは「現在開いているシート」だけです。他のシートは対象外です。セルの色付け
一致したセルの背景が青色になります。青色になったセルが、キーワードと一致したものだと分かる仕組みです。
実行手順
「マスター」シートにキーワードを記入する
Excelで「マスター」という名前のシートを作成し、列Aにキーワードを記入します。アクティブシートを選択する
キーワードを検索したいシートを表示させます。VBAコードを実行する
マクロを実行すれば、アクティブシートの列Aが処理対象になり、該当セルが青色に変わります。
注意点
キーワードの検索は、部分一致で行われます。
例えば、キーワードが「猫」の場合、「猫カフェ」や「黒猫」なども一致します。マクロが動作する前に、必ず「マスター」シートが存在し、列Aにデータが入っていることを確認してください。
データの保存は忘れずに。特にセルの色が変わるので、元に戻したい場合に備え、マクロ実行前にファイルを保存しておきましょう。
関連リンク
Sub マスタにあるキーワードがあったらセルを青色にするよ()
Application.ScreenUpdating = False
'マスターを配列に保存する
Dim wsm As Worksheet
Set wsm = Worksheets("マスター")
Dim lastRow As Long
lastRow = wsm.Cells(wsm.Rows.count, 1).End(xlUp).row
Dim Master As Variant
Master = wsm.Range("A1").Resize(lastRow, 1).Value
'二次元配列から一次元配列へ変換する
Master = WorksheetFunction.Transpose(Master)
Dim ws As Worksheet
Set ws = ActiveSheet
ws.Activate
Dim FoundCell As Range, FirstCell As Range, Target As Range
Dim i As Long
For i = LBound(Master) To UBound(Master)
Set FoundCell = Cells.Find(What:="*" & Master(i) & "*")
If FoundCell Is Nothing Then
GoTo L1
' MsgBox "キーワードはありません"
' Exit Sub
Else
Set FirstCell = FoundCell
End If
If FoundCell.Column = 1 Then
FoundCell.Interior.Color = vbBlue
End If
Do
Set FoundCell = Cells.FindNext(FoundCell)
If FoundCell.Address = FirstCell.Address Then
Exit Do
ElseIf FoundCell.Column = 1 Then
FoundCell.Interior.Color = vbBlue
End If
Loop
L1:
Next i
MsgBox "チェック完了!"
Application.ScreenUpdating = True
End Sub
キーワード
#excel #できること #vba #検索 #条件付き書式 #セル色付け #列A #キーワード一致 #青色にする #配列操作 #部分一致 #マスターシート #アクティブシート #プロシージャ #VBA初心者 #色変更 #コード解説 #簡単プログラム #マクロ実行
English Translation of the Explanation
Highlight cells in blue if keywords from the master sheet are found
This explanation is created with ChatGPT.
This procedure uses the keywords listed in the "Master" sheet of a workbook to search column A of the currently active sheet, and it highlights matching cells in blue. Below is a clear and concise explanation of how it works.
How the Code Works
Retrieve Keywords from the "Master" Sheet
The program reads all keywords from column A of the "Master" sheet and stores them as an array.
This array is used for subsequent searches.
Searching and Coloring
The program searches column A of the active sheet for cells containing the keywords.
Matching cells have their background color set to blue (using vbBlue).
Repeating the Search
For each keyword, the program searches for matches and highlights all cells containing that keyword.
Completion Notification
After the operation, a message box appears stating, "Check complete!"
Key Points
Master Keywords
You need to list the keywords one per row in column A of the "Master" sheet. These keywords serve as the search criteria.Target Sheet
The search is performed only on the currently active sheet. Other sheets are not affected.Cell Coloring
Any cell containing a matching keyword will be highlighted in blue, making it easy to identify matches.
Steps to Use
Enter Keywords in the "Master" Sheet
Create a sheet named "Master" in Excel and populate column A with your keywords.Select the Target Sheet
Open the sheet you want to process so it becomes the active sheet.Run the VBA Code
Execute the macro, and column A of the active sheet will be processed. Matching cells will turn blue.
Cautions
The search uses partial matching.
For example, if the keyword is "cat," cells containing "cat cafe" or "black cat" will also match.Ensure the "Master" sheet exists and column A contains data before running the macro.
Remember to save your data beforehand. Since cell colors will change, saving the file before running the macro is a good idea if you want to revert changes.
Related Links
Keywords
#excel #vba #features #searching #conditionalformatting #cellhighlight #columnA #keywordmatching #bluehighlight #arrayoperations #partialmatch #mastersheet #activesheet #procedure #VBAforbeginners #colorchange #codeexplained #simpleprogram #macrorun