我把头发拉出来。
我整理了一些代码,用于打开与数据库中的记录相关联的文件。较新的数据具有作为文本存储在单独表中的完整文件路径。旧数据没有完整的文件路径,但在大多数情况下有足够的细节来组装工作路径。
我的代码检查旧数据字段是否为空以及它们是否继续执行较新的文件路径。
我遇到的问题是IF语句中的DLookup被卡在它使用的第一个文件上。无论我做什么,DLookup总是会返回与第一次运行代码时相同的结果。我很难过。
Private Sub btnOpenFile_Click()
Dim FacID As String
Dim FacIDShort As String
Dim CDID As String
Dim FileName As String
Dim FileURL As String
FacID = [FAC_ID]
FacIDShort = Left(FacID, 4)
On Error GoTo ErrHandler
If IsNull([CD_NUM]) Then ' Checks to see if old file path exists before trying new file path
FileURL = DLookup("[File_Path]", "tblFileDirectory", "[Drawing_ID]")
Application.FollowHyperlink (FileURL)
Else
CDID = [CD_NUM]
FileName = [FILENAME]
FileURL = ("\\SYSTEMXXX\" & FacIDShort & "\" & FacID & "\FILES\" & CDID & "\" & FileName)
Application.FollowHyperlink (FileURL)
End If
Exit Sub
ErrHandler:
LogError (FileURL)
MsgBox ("Error: " & FileURL & vbNewLine & "The URL Does Not Exist.")
End Sub
答案 0 :(得分:0)
DLookup(“[File_Path]”,“tblFileDirectory”,“[Drawing_ID]”实际上应该更像是DLookup(“[File_Path]”,“tblFileDirectory”,“MyDrawingIdColumnInTable = MyDrawingIdToLookFor”