
예를 들어 시트에는 100(행) x 20(열)개의 셀이 있고 모든 셀에는 5개의 줄이 있습니다. 일부 줄은 빨간색이고 일부 줄은 취소선으로 표시되어 있습니다. 빨간색 줄을 모두 검색하려면 어떻게 해야 합니까? 취소선이 있는 모든 줄을 어떻게 찾을 수 있나요? 로만 검색하려면 어떻게 해야 하나요 SearchFormat
?
Excel을 사용해 보았지만 find with format
셀의 일부에서는 작동하지 않습니다. 5개 라인이 모두 빨간색이면 해당 라인을 찾을 수 있습니다. 하지만 빨간색 선 2개만 정상이고 나머지 3개 선이 정상인 match entire cell contents
경우 에는 2개 선을 찾을 수 없습니다.~ 아니다확인했습니다.
답변1
VBA
이에 대한 해결책이 필요합니다 :
시작하기 위한 샘플 매크로는 다음과 같습니다. 활성 시트(활성 셀의 오른쪽에 있는 한 셀에서 시작)에서 텍스트 상수가 포함된 셀을 검색한 다음 셀의 텍스트에서 한 번에 한 문자씩 빨간색을 검색합니다. 빨간색 텍스트가 포함된 첫 번째 셀을 중지하고 선택합니다.
Sub FindColorInCells()
Dim n As Long
Dim i As Long, j As Long
Dim cl As Range
Dim r As Range
Set r = ActiveSheet.UsedRange
i = ActiveCell.Row - r.Row + 1
If i > r.Rows.Count Or i < 0 Then i = 1
j = ActiveCell.Column - r.Column + 1
If j > r.Columns.Count Or j < 0 Then j = 1
i = (r.Columns.Count * (i - 1) + j) Mod r.Cells.Count + 1
j = r.Cells.Count
Do While i <> j
With r(i)
If Not .HasFormula Then
If Len(.Value) > 0 Then
If TypeName(.Value) = "String" Then
For n = 1 To .Characters.Count
If .Characters(n, 1).Font.ColorIndex = 3 Then
' found red
.Select
Exit Sub
End If
Next
End If
End If
End If
End With
i = i Mod j + 1
Loop
End Sub