vba - 检查文件是否在数据库中链接
问题描述
我有一个存储有关 word 文档信息的 Access 数据库。其中一行包含指向该文件的链接。由于数据库的一些复杂性,我开始编写代码来检查链接是否有效并指向现有文件:
Private Sub LinkCheck()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim ind As Integer
Dim errStr As String
Set db = CurrentDb
Set rs = db.OpenRecordset("Files", dbOpenTable)
rs.MoveFirst
With rs
For ind = 0 To (rs.RecordCount - 1)
On Error Resume Next
If Dir(rs!Hyperlink) = "" Then
If Err.Number = 52 Then
Err.Clear
errStr = errStr & rs!FileName & " RUNTIME" & vbNewLine
Else
errStr = errStr & rs!FileName & vbNewLine
End If
End If
rs.MoveNext
Next ind
End With
If errStr <> "" Then MsgBox (errStr)
该子检查链接是否指向有效文件。如果链接有效,但文件不存在,则子程序将数据库中的文件名添加到消息框,如果链接本身无效,则将文件名添加到带有“RUNTIME”的相同消息框除此之外,指示运行时错误 52。
这个子运行良好,现在我正在尝试编写一个执行相反操作的代码,通过相关文件夹和子文件夹中的文件并检查该文件是否在数据库中链接。
这就是我卡住的地方,因为我对 VBA 比较陌生,我不知道如何解决这个问题。有没有办法使用类似的 sub 来执行此操作?
解决方案
推荐阅读
- rest - Alfresco REST Core API 通过 node-uuid 检索版本
- excel - 在 VBA 循环中使用多个变量在没有下一个错误的情况下遇到问题
- c# - 验证 Web api 中空值的表单数据
- jquery - 使用 JQuery onclick 切换反向视频
- flutter - 如何更改自定义可重用文本字段组件颤动中的focusedBorder颜色
- python - 如何从pytorch中给定位置的每一行获取值?
- sql - 我有一个查询,但它不起作用。我怎样才能正确地写它?
- asynchronous - Log4j2.xml - 队列大小和discardingThreshold
- flutter - 如何计算 querySnapshot 的总和?带有颤振/云火库
- angular - TestCafe 在登录过程中失去对弹出窗口的控制