أضف تعليقا متعدد الصفحات عن طريق التكرار من قيم الخلية
سؤال
أود إنشاء التسميات التوضيحية لصفحات نموذج المستخدم متعدد الصفحات عن طريق التكرار من خلال بعض قيم الخلايا ، ولكن للأسف أحصل على خطأ عند تهيئة نموذج المستخدم.
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