【发布时间】:2014-04-14 15:14:53
【问题描述】:
我想通过循环遍历一些单元格值来为用户表单多页的页面生成标题,但不幸的是,当用户表单初始化时出现错误。
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
【问题讨论】:
-
i get an error- 什么错误?在哪一行? -
没有一行。这是运行时错误“5”。 '无效的过程调用或参数'。谢谢!
-
这是因为页数和
pagecount不匹配。也许你需要这样的东西:If n>=.Pages.Count Then .Pages.Add就在Do行之后? -
哦,好的,感谢 simoco,我找到了解决方案(需要在标题之前添加一个页面。):使用 MultiPage1 Do .Pages.Add.Caption = Sheets("SETUP").Range( "B" & name).Value n = n + 1 name = name + 1 Loop Until n = pagecount End With 毕竟这是一个非常愚蠢的问题。
标签: vba excel userform multipage do-loops