+ -
当前位置:首页 → 问答吧 → WORD谁可以实现运行所有的MacroButton域

WORD谁可以实现运行所有的MacroButton域

时间:2011-07-18

来源:互联网

哪位高手可以实现,用宏,VBA自动查找文档中所有MacroButton域 并双击运行,求高手,在线等

作者: tonan   发布时间: 2011-07-18

求高手解答

作者: tonan   发布时间: 2011-07-18

附件在这里

附件

如何一键运行该文档中的所有域.rar(4.03 KB)

2011-7-18 13:27, 下载次数: 9

作者: tonan   发布时间: 2011-07-18

Sub test()
  Dim myField As Field
  For Each myField In ActiveDocument.Fields
     If myField.Type = wdFieldMacroButton Then
        myField.DoClick
     End If
  Next
End Sub

作者: chylhr   发布时间: 2011-07-18

引用:
原帖由 chylhr 于 2011-7-18 15:06 发表
Sub test()
  Dim myField As Field
  For Each myField In ActiveDocument.Fields
     If myField.Type = wdFieldMacroButton Then
        myField.DoClick
     End If
  Next
End Sub
将代码放置于ThisDocument下运行,提示:
溢出堆栈空间

作者: tangqingfu   发布时间: 2011-07-18

谢谢了,很有效

作者: tonan   发布时间: 2011-07-18

引用:
原帖由 tangqingfu 于 2011-7-18 15:28 发表

将代码放置于ThisDocument下运行,提示:
溢出堆栈空间
我没有注意到楼主的MACROBUTTON域中运行的宏过程名为Test,而我写的代码过程名也碰巧是Test,造成了过程嵌套太深,出现堆栈空间溢出.
解决办法:可将我的代码过程名更改名字即可.如改为Test1.

[ 本帖最后由 chylhr 于 2011-7-18 16:02 编辑 ]

作者: chylhr   发布时间: 2011-07-18