遇到问题,我编写了一个每 2 分钟刷新一次的宏,用于从网页上传数据,我的宏的最后一步是使用“文本到列”功能,以便很好地将其拆分为列。
每次执行此“文本到列”时,问题都会出现在这里,它会询问我是否要覆盖列(并且我愿意),但我需要手动按下确定。
有没有办法让 VBA 在警报中按下这个 OK 按钮?
非常感谢你!
遇到问题,我编写了一个每 2 分钟刷新一次的宏,用于从网页上传数据,我的宏的最后一步是使用“文本到列”功能,以便很好地将其拆分为列。
每次执行此“文本到列”时,问题都会出现在这里,它会询问我是否要覆盖列(并且我愿意),但我需要手动按下确定。
有没有办法让 VBA 在警报中按下这个 OK 按钮?
非常感谢你!
只需Application.DisplayAlerts = False
在调用之前添加,然后将其设置回True
之后。
http://msdn.microsoft.com/en-us/library/office/aa175241%28v=office.11%29.aspx
更新:我刚刚进行了测试,默认情况下它不会提示我。你可以发布你正在使用的代码吗?我只是做了:
Public Sub Test()
Dim r As Range
Set r = ActiveWorkbook.Sheets(1).Columns("A:A")
r.TextToColumns Destination:=Range("B1")
End Sub
此链接表示该DisplayAlerts
解决方案已对其他人有效。
您可以DoCmd.SendKeys
在生成对话框的指令之前添加一个。
您应该在最大化窗口之前使用鼠标单击功能,以便确定按钮的 x、y 坐标保持不变使用 windows lib 32