将页面添加到多页

时间:2017-11-14 12:21:56

标签: vba excel-vba excel

我使用Excel 2016

我想将页面添加到多页面控件。 出于某种原因,我收到错误"运行时错误' 13':类型不匹配"

我有一个带有UserForm的空白Excel文件。在UserForm上我有一个CommandButton和一个MultiPage,两者都是开箱即用的。我将以下代码添加到CommandButton

Private Sub CommandButton1_Click()
    Dim myPage As Page
    Set myPage = Me.MultiPage1.Pages.Add("testpage", "TestPage")
End Sub

我是否需要添加对某些工具包的引用才能生效?目前我有以下参考资料

  • Visual Basic For Applications
  • Microsfot Excel 16.0对象库
  • OLE自动化
  • Microsoft Office 16.0对象库
  • Microsoft Forms 2.0对象库

当我编写Dim myPage声明时,我得到一个对象列表..我有两个Page对象?当我写的时候

myPage.

获取该对象的可用内容列表,我看到以下内容

  • CenterFooter
  • CenterHeader
  • LeftFooter
  • LeftHeader
  • RightFooter
  • RightHeader

所以我假设myPage对象不是来自正确的页面类型

3 个答案:

答案 0 :(得分:0)

无需获取对新页面对象的引用

即可
Me.MultiPage1.Pages.Add
Me.MultiPage1.Pages(Me.MultiPage1.Pages.Count - 1).Name = "testpage"
Me.MultiPage1.Pages(Me.MultiPage1.Pages.Count - 1).Caption = "TestPage"
Debug.Print Me.MultiPage1.Pages(Me.MultiPage1.Pages.Count - 1).Name
Debug.Print Me.MultiPage1.Pages(Me.MultiPage1.Pages.Count - 1).Caption

答案 1 :(得分:0)

这也可以:

MultiPage1.Pages.Add "tst1", "TestPage"

答案 2 :(得分:-2)

简单的非编码方式: 左键单击->“新建页面”