从VBS,我正在运行一个宏" Inc"在一个已经打开的excel工作簿中。宏正在执行(这是在重新打开工作簿后看到更新的单元格值后确认的),但是excel在我运行代码后很快就会出现。你能告诉我在代码中需要改变什么吗?
宏代码:
Sub Inc()
Dim bs As Worksheet
Set bs = Workbooks("Main.xlsm").Sheets("TimeStampWork")
bs.Range("K11").Value = bs.Range("K11").Value + 1
bs.Range("L11").Value = Now
bs.Range("L11").NumberFormat = "dd-mm-yyyy, hh:mm:ss"
End Sub
VBS代码:
Option Explicit
Dim xlApp, xlBook
Set xlBook = GetObject("E:\Main.xlsm")
Set xlApp = xlBook.Application
xlApp.Visible = True
xlApp.Run "Inc"
xlBook.Save
Set xlBook = Nothing
Set xlApp = Nothing
更新: 而不是宏观" Inc"我试着用一个简单的消息框运行一个宏,它没有任何问题。我无法看到excel的任何问题。
答案 0 :(得分:0)
此问题现已解决。使用screenupdate选项更改了我的宏,解决了问题
Sub Inc()
Application.ScreenUpdating = False
Dim bs As Worksheet
Set bs = Workbooks("Main.xlsm").Sheets("TimeStampWork")
bs.Range("K11").Value = bs.Range("K11").Value + 1
bs.Range("L11").Value = Now
bs.Range("L11").NumberFormat = "dd-mm-yyyy, hh:mm:ss"
Application.ScreenUpdating = True
End Sub