各位大侠 ,请问用VBS如何判断EXCEL文件是否打开,在网上只找到VBA的判断方法,但在VBS里不能用。
最佳答案
需要使用GetObject来获取Excel进程句柄,从而判断EXCEL文件是否已被打开。
On Error Resume Next '此句必须有,防止无EXCEL进程时GetObject出错
Dim xlApp,xlBook
Dim isXlsOpen
isXlsOpen = False
Set xlApp = GetObject(,"Excel.Application") '获取EXCEL进程
If TypeName(xlApp) = "Application" Then '检测到有Excel进程已经打开
For Each xlBook In xlApp.WorkBooks '循环检查Excel进程打开的Workbooks
'MsgBox xlBook.FullName
If xlBook.FullName = "D:\TEMP.XLS" Then '如果路径与所检查的文件一致
isXlsOpen =True
Exit For
End If
Next
End If
提问者对于答案的评价:
感谢大侠!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc276284.html