所以......我用这段代码作为参考:
Option Explicit
Sub Sample()
Dim Ret
Ret = IsWorkBookOpen("C:\myWork.xlsx")
If Ret = True Then
MsgBox "File is open"
Else
MsgBox "File is Closed"
End If
End Sub
Function 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 Select
End Function
我使用了我的工作簿和所有内容,但它在第15行返回语法错误:ff = FreeFile _()。
为什么会这样?有什么语法错误? 我正在尝试检查某个其他用户是否打开了工作簿,因为如果是这种情况,我无法将值保存在工作簿中。
感谢您的回答,D。
答案 0 :(得分:0)
我认为您已将代码复制/粘贴到VBA编辑器中。所以清理代码,删除所有不需要的空白,验证每行完成的位置。