셀 값에서 루프를 눌러 다중 값 캡션을 추가합니다
문제
일부 셀 값을 통해 루프를 반복하여 UserForm 다중 값의 페이지에 대한 캡션을 생성하고 싶지만 UserForm이 초기화 될 때 오류가 발생합니다.
Private Sub UserForm_Initialize()
Dim pagecount As Integer
Dim n As Integer
Dim name As Integer
pagecount = Sheets("SETUP").Range("B" & rows.Count).End(xlUp).Row - 5
n = 0
name = 6
With MultiPage1
Do
.Pages(n).Caption = Sheets("SETUP").Range("B" & name).Value
n = n + 1
name = name + 1
Loop Until n = pagecount
End With
End Sub
. 해결책
의견에서 후속 조치로,이 방법은 다음과 같습니다.
Private Sub UserForm_Initialize()
Dim pagecount As Long
Dim n As Long
pagecount = Sheets("SETUP").Range("B" & Rows.Count).End(xlUp).Row - 5
n = 0
With MultiPage1
Do
If n >= .Pages.Count Then .Pages.Add
.Pages(n).Caption = Sheets("SETUP").Range("B" & n + 6).Value
n = n + 1
Loop Until n = pagecount
End With
End Sub
.
또한 Dim pagecount As Integer
를 Dim pagecount As Long
로 변경 한 것입니다 (정수의 최대 값은 32768
만 있기 때문에).귀하의 예는 32768
페이지 이상이 될 것 같지 않지만, 일반적으로 마지막 행을 결정할 때 Long
를 사용하는 것이 좋습니다.
제휴하지 않습니다 StackOverflow