Excel VBA에 사용자 폼이 매월 확인란과 함께 있습니다.VBA 사용자 정의 폼의 CheckBox 컨트롤을 반복합니다.
시트에 표시된 월을 하나 이상 선택하면 코드를 12 번 복사하여 붙여 넣으면 작동하지만 더 나은 방법은 For
루프를 사용하는 것입니다.
이
(이것은 12 배에 간다) 내 코드의 일부이다 :for i in range 1 to 12
다음 내 코드를 작성하지만, 경우에 문제가있는 것 : 내가 쓰는 시도
If CheckBox1.Value = True Then
ActiveSheet.PivotTables("PivotTable1").PivotFields("month").PivotItems("1").Visible = True
Else
ActiveSheet.PivotTables("PivotTable1").PivotFields("month").PivotItems("1").Visible = False
End If
If CheckBox2.Value = True Then
ActiveSheet.PivotTables("PivotTable1").PivotFields("month").PivotItems("2").Visible = True
Else
ActiveSheet.PivotTables("PivotTable1").PivotFields("month").PivotItems("2").Visible = False
End If
나는 숫자 대신에 "i"를 쓴다.
중첩 된 COM 참조를 해결하는 것이 좋습니다), 사용자 정의 폼 내에서 실행 이 줄을 가진 problen 인 것 같습니다. ".OLEObjects" "메서드 또는 데이터 멤버를 찾을 수 없습니다." – user1040563
@user1040563 .. 변경되었습니다. – matzone
OLEObjects는 워크 시트의 컨트롤을 참조합니다. 'UserForm'에서 (Excel 2003까지) 최소한 Controls ... –