怎样在Word VBA宏中变通处理才能执行像手工按下F2的动作组合?

使用问题 · 1587 次浏览
sxf910 创建于 2020-12-26 15:44

我针对Word文档中的嵌入式对象写了一个动作组合(借鉴网友动作改写),并将它指定了快捷键,即功能键F2,我操作时先是在Word中用鼠标选中每个要处理的嵌入式对象(如嵌入式插图),再手工按F2键,效果很好。但当整个文档中的所有嵌入式对象都要进行相同操作时,我在Word中写了一段VBA宏,遍历所有嵌入式对象,逐一处理:

Sub Test()
'
Dim p As InlineShape
    For Each p In ActiveDocument.InlineShapes
        p.Select                `选中嵌入式对象
        SendKeys "{F2}"    `按F2键,执行Quicker动作组合
    Next
End Sub

实际上,这段代码中的红色语句并不能执行,我也知道不能执行,但我想知道怎样变通处理才能执行像手工按下F2的动作组合?


回复内容
CL 2020-12-26 16:24
#1

可以试试外部启动动作的方式看看行不行。

vba的sendkeys,估计只会发送给word本身,不会发送到quicker。

sxf910 2020-12-26 16:32 :

谢谢!要是您的Quicker的动作组合能生成一个可执行的命令行,如abc.exe,这个问题就好解决。

sxf910 2020-12-26 22:30 :
谢谢!您提示的方法很对,但有一个问题我百思不解,就是我的动作组合就是反复剪切、粘贴,而我在逐行运行调试时发现,剪贴板中的数据都是正确的,但就是Word中不能执行粘贴。请看下图,接下来我的动作组合就是要将剪贴板中的第一个数据粘贴到Word文档的插入点处,但菜单上“复制”“粘贴”都灰化了,手动粘贴也不行,我粘贴到记事中是正确的(因是MathML脚本,是纯文本)。(截图见下面)
CL 回复 sxf910 2020-12-26 22:41 :

这个不太懂了😂

sxf910 2020-12-26 22:31
#2


Cesar 2020-12-27 12:28
#3

啥动作,分享下呗


sxf910 2020-12-27 15:56 :

就是您的动作呀!非常谢谢您!我只是想针对文档中的公式全部都图片化了结合您的动作写一个全自动处理宏。我刚在您的分享下写了一条新评论。

Cesar 2020-12-27 15:59 :

全自动还行哈哈哈,我不是很懂vba,也不是很懂你遇到的问题😂

sxf910 2020-12-27 15:53
#4

我今晨在家里的64位台式机上安装Quicker后,发现不能设全局快捷键,也不能用外部命令,也没弹出填账号、PW的界面。但看官网上的说明,前一个月应没有限制呀!我才注册了3天,是不是只能在Win 10上用?

sxf910 最后更新于 2020-12-27 16:09
sxf910 2020-12-27 21:43 :

晚上回家搞明白了,因电脑上安了微信PC端,安装时自动生成了一免费账号,但没注册信息,不能用专业版功能。不过我还是有点不明白,我当时并未登陆PC端微信。

CL 回复 sxf910 2020-12-27 22:05 :

不需要登录pc端微信的,quicker的微信登录是手机扫码登录。

sxf910 2020-12-27 21:40
#5


回复主贴