DLookup没有刷新 - VBA打开文件路径

时间:2014-09-09 22:54:07

标签: vba ms-access

我把头发拉出来。

我整理了一些代码,用于打开与数据库中的记录相关联的文件。较新的数据具有作为文本存储在单独表中的完整文件路径。旧数据没有完整的文件路径,但在大多数情况下有足够的细节来组装工作路径。

我的代码检查旧数据字段是否为空以及它们是否继续执行较新的文件路径。

我遇到的问题是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

1 个答案:

答案 0 :(得分:0)

DLookup(“[File_Path]”,“tblFileDirectory”,“[Drawing_ID]”实际上应该更像是DLookup(“[File_Path]”,“tblFileDirectory”,“MyDrawingIdColumnInTable = MyDrawingIdToLookFor”