반응형
체크 박스를 만드는 샘플 코드 입니다
체크 박스 만들고 ,삭제 하기 / 전체 선택, 전체 해제 #2는 이벤트를 처리 방법에 대한것을 배울수 있습니다.
1. cell을 클릭 했을때 기호 "■"와 "□"를 전환 하는 방법
소스 코드
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, [B10:B40]) Is Nothing Then
If Target.Count < 0 Then: Exit Sub
If Target.Value = "□" Then Target.Value = "■" Else: Target.Value = "□"
End If
End Sub
※ 주의 사항
반드시 SelectionChange 이벤트에서 코딩을 해야 합니다
응용 코드
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range
Dim rn As Long
Set rng = Range("B10", Cells(Rows.Count, "B").End(xlUp))
rn = rng.Rows.Count
If Not Intersect(Target, Range(Cells(10, "B"), Cells(10 + rn - 1, "B"))) Is Nothing Then
If Target.Count < 0 Then: Exit Sub
If Target.Value = "□" Then Target.Value = "■" Else: Target.Value = "□"
End If
End Sub
VBA Intersect 함수는 아래 블로그를 참고 하십시요
2. 전체를 선택 또는 해제
소스 코드
Private Sub DrawingCHK_Click()
If DrawingCHK.Value = True Then
ActiveSheet.[B10:B40] = "■"
Else
ActiveSheet.[B10:B40] = "□"
End If
End Sub
프로그램 실행 예제
※ 주의 사항
반드시 Click 이벤트에서 코딩을 해야 합니다
응용 코드
Private Sub FileCheck_Click()
Dim rng As Range
Dim rn As Long
Set rng = Range("B10", Cells(Rows.Count, "B").End(xlUp))
rn = rng.Rows.Count
If FileCheck.Value = True Then
ActiveSheet.Range(Cells(10, "B"), Cells(10 + rn - 1, "B")) = "■"
Else
ActiveSheet.Range(Cells(10, "B"), Cells(10 + rn - 1, "B")) = "□"
End If
End Sub
보다 자세한 내용은 아래 동영상을 참고 합니다.
'VBA Code' 카테고리의 다른 글
VBA Partlist 내용을 PPT 파일로 만들기 - 참고자료 (0) | 2022.11.07 |
---|---|
체크 박스 만들고 ,삭제 하기 / 전체 선택, 전체 해제 #3 (0) | 2022.11.02 |
IIf Intersect([A2:C2], [B:B]) Is Nothing Then (0) | 2022.11.02 |
VBA 기초 강좌 (0) | 2022.10.13 |
체크 박스 만들고 ,삭제 하기 / 전체 선택, 전체 해제 #1 (0) | 2022.10.11 |