使用附件的文件名填充表格



我有一个已付款发票的基本记录数据库。在我们的网络驱动器上,我们有一个单独的PDF文件,标记有3个字母的代码属性代码、MMDDYY日期和供应商名称。PDF保存到网络驱动器后,相同的信息会输入到Access数据库中(3位字母的财产代码、日期、供应商名称(。有没有办法通过VBA将文件附加到记录来填充这些字段?

我每周收到大约40-60个文件,我可以通过导出文件夹中所有文件名的.txt文件来执行此操作,然后准备将该文本文件导入Access。。。但我发现只手动输入每个记录会更快。

并不是每个人都可以访问网络驱动器(文件包含财务数据(,但有些人需要访问以确定何时支付发票。

Travis,

您可以使用一些VBA代码来循环文件夹,检查新的PDF文件,然后将这些文件添加到表中。像这样的东西似乎奏效了:

Dim db As DAO.Database
Dim rsData As DAO.Recordset
Dim strFolder As String
Dim strFile As String
Set db = DBEngine(0)(0)
Set rsData = db.OpenRecordset("SELECT * FROM tblFileData WHERE 1=2;")
strFolder = "J:test-data"
strFile = Dir(strFolder, vbNormal)
Do
If Right(strFile, 3) = "pdf" Then
If IsNull(DLookup("PropertyCode", "tblFileData", "PropertyCode & ProcessDate & VendorName='" & Left(strFile, Len(strFile) - 4) & "'")) Then
With rsData
.AddNew
!PropertyCode = Left(strFile, 3)
!ProcessDate = Mid(strFile, 4, 6)
!VendorName = Mid(strFile, 10, Len(strFile) - 13)
.Update
End With
End If
End If
strFile = Dir
Loop Until strFile = ""

您可能还需要考虑将文件名存储在此表中,以便用户可以在网络上打开此文件,并将处理过的文件移动到新文件夹中,以便每天只处理新文件。

问候

最新更新