이벤트와 사용자함수를 이용하여 해당값들을 찾는 구문이다.
열 찾는 구문에서 보통 column 함수를 사용하면 열번호를 반환한다. 그렇기 때문에 CHR 함수를 통해서 숫자를 열의 알파벳으로 변화를 해야한다. 엑셀함수는 CHAR 이고 CHAR(65) = A 와 같다.
아래 코드는 전체 영역을 순환하면서 일치값이 있으면 열 머리값을 반환하는 코드이다.
For Each rngA In rngAll
If rngA.Value = X Then
Haja_find = Chr(64 + rngA.Column)
Exit Function
End If
Haja_find = "일치없음"
Next rngA
나머지 이벤트 코드는 초기화 한 후 일치값에 색상을 입히는 단순한 코드이다.
오늘도 화이팅한 당신께 박수를 보낸다.
더보기
Option Explicit
Private Sub Worksheet_Calculate()
Dim rngAll As Range: Set rngAll = [a2:i6]
Dim rngF As Range: Set rngF = [k2]
Dim rngX As Range
rngAll.Interior.ColorIndex = xlNone '= 색상 초기화
Do Until IsEmpty(rngF) '= 찾기 영역이 빈값일때까지
Set rngX = rngAll.Find(rngF, lookat:=xlWhole)
On Error Resume Next '= 일치없음 이면 에러를 무시
rngX.Interior.ColorIndex = 6
On Error GoTo 0
Set rngF = rngF.Offset(1)
Loop
End Sub
더보기
Option Explicit
Function Haja_find(X) As String
Dim rngAll As Range: Set rngAll = [a2:i6]
Dim rngA As Range
For Each rngA In rngAll
If rngA.Value = X Then
Haja_find = Chr(64 + rngA.Column)
Exit Function
End If
Haja_find = "일치없음"
Next rngA
End Function
'VBA > 엑사남_기초방' 카테고리의 다른 글
[기초방] VBA 100제 #17 [ CHR + ASC ] (0) | 2023.01.17 |
---|---|
[기초방] VBA 100제 #16 [ 이벤트 + 빈셀삭제하기 ] (0) | 2023.01.16 |
[기초방] VBA 100제 #14 [ 이벤트 필터링하기 ] (0) | 2023.01.15 |
[기초방] VBA 100제 #13 [ 정규식으로 계산하기 ] (0) | 2023.01.15 |
[기초방] VBA 100제 #12 [ Like구문 ] (0) | 2023.01.10 |
댓글