0

遇到问题,我编写了一个每 2 分钟刷新一次的宏,用于从网页上传数据,我的宏的最后一步是使用“文本到列”功能,以便很好地将其拆分为列。

每次执行此“文本到列”时,问题都会出现在这里,它会询问我是否要覆盖列(并且我愿意),但我需要手动按下确定。

有没有办法让 VBA 在警报中按下这个 OK 按钮?

非常感谢你!

4

3 回答 3

3

只需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解决方案已对其他人有效。

于 2013-03-21T13:33:58.933 回答
1

您可以DoCmd.SendKeys在生成对话框的指令之前添加一个。

于 2013-03-21T13:32:57.223 回答
1

您应该在最大化窗口之前使用鼠标单击功能,以便确定按钮的 x、y 坐标保持不变使用 windows lib 32

于 2014-10-30T13:46:17.910 回答