在VBA中,我以編程方式打開了一個名為“myWork.XL”的MSExcel文件?,F在,我想要一個可以告訴我它的狀態的代碼-不管它是否是開放的。比如說IsWorkBookOpened("myWork.XL) ?檢測Excel工作簿是否已打開
3 回答
蝴蝶不菲
TA貢獻1810條經驗 獲得超4個贊
Option ExplicitSub Sample()
Dim Ret
Ret = IsWorkBookOpen("C:\myWork.xlsx")
If Ret = True Then
MsgBox "File is open"
Else
MsgBox "File is Closed"
End IfEnd SubFunction IsWorkBookOpen(FileName As String)
Dim ff As Long, ErrNo As Long
On Error Resume Next
ff = FreeFile()
Open FileName For Input Lock Read As #ff
Close ff
ErrNo = Err On Error GoTo 0
Select Case ErrNo Case 0: IsWorkBookOpen = False
Case 70: IsWorkBookOpen = True
Case Else: Error ErrNo End SelectEnd Function
郎朗坤
TA貢獻1921條經驗 獲得超9個贊
Function BookOpen(strBookName As String) As Boolean Dim oBk As Workbook On Error Resume Next Set oBk = Workbooks(strBookName) On Error GoTo 0 If oBk Is Nothing Then BookOpen = False Else BookOpen = True End IfEnd FunctionSub testbook() Dim strBookName As String strBookName = "myWork.xls" If BookOpen(strBookName) Then MsgBox strBookName & " is open", vbOKOnly + vbInformation Else MsgBox strBookName & " is NOT open", vbOKOnly + vbExclamation End IfEnd Sub
添加回答
舉報
0/150
提交
取消
