Word VBA宏按钮只能工作一次

时间:2017-06-08 15:25:07

标签: vba ms-word

我正在尝试创建一个复制整个页面内容的按钮,并将其粘贴到同一文档中的新页面。当我第一次将其格式化为MacroButton(CTRL + F9)时,它会多次运行。现在我尝试使用旧版表单(开发人员选项卡)下的命令按钮作为点击事件,它只能使用一次。我不知道为什么会这样。这是我的代码:

Private Sub AddPage3_Click()
 Const wdPageBreak = 7
 ActiveDocument.Bookmarks("\page").Range.Copy
 Selection.InsertBreak (wdPageBreak)
 Selection.Paste
 Selection.TypeBackspace
 Selection.TypeBackspace
End Sub

当我按下按钮时,它将在文档中创建另一个页面,其中包含活动页面的内容(按钮所在的页面),但它将无法再次运行。如果您有任何建议,请告诉我:)!

1 个答案:

答案 0 :(得分:2)

复制/粘贴后,您可以按如下方式重命名命令按钮,并且每次命令按钮都会继续运行:

Private Sub AddPage3_Click()
Dim shp As InlineShape
Const wdPageBreak = 7
ActiveDocument.Bookmarks("\page").Range.Copy
Selection.InsertBreak (wdPageBreak)
Selection.Paste
Selection.TypeBackspace
Selection.TypeBackspace
For Each shp In ActiveDocument.InlineShapes
    On Error Resume Next
    If shp.OLEFormat.ClassType = "Forms.CommandButton.1" Then
        If shp.OLEFormat.Object.Name = "AddPage31" Then
            shp.OLEFormat.Object.Name = "AddPage3"
        End If
    End If
Next
End Sub