【发布时间】:2018-12-10 15:39:23
【问题描述】:
我在访问中运行了一些 VBA。它的目的是输出一个管道划定的字符串,以便提供现有表的导出/备份。它运行良好,但我想添加另一个功能。它可能运行的表之一包含附件,我希望附件文件名出现在“附件”字段下。目前代码只是在里面贴了一个警告,但我想要一些更相关的东西。
代码当前读取指定表中的每个字段名称,用竖线 (|) 分隔它们。然后它转到一个新行并使用每个字段中的值重复该过程。相关代码如下:
Set rs = CurrentDb.OpenRecordset(Table, dbOpenSnapshot)
rs.Filter = srchString
Set rsFilt = rs.OpenRecordset()
fieldCount = rsFilt.Fields.Count
recordTot = rsFilt.RecordCount
If recordTot <> 0 Then
rsFilt.MoveFirst
Dim o As Integer
For o = 0 To fieldCount - 1
fieldNames = fieldNames & rsFilt.Fields(o).Name & "|"
Next o
Do While rsFilt.EOF = False
For o = 0 To fieldCount - 1
If rsFilt.Fields(o).Type <> 101 Then
oldDataSet = oldDataSet & Nz(rsFilt.Fields(o).Value, "") & "|"
Else
oldDataSet = oldDataSet & "attached files not saved in logs" & "|"
End If
Next o
oldDataSet = oldDataSet & vbNewLine
rsFilt.MoveNext
Loop
Else
fieldNames = "No " & Table & " for this member."
End If
createRecordSnapshot = fieldNames & vbNewLine & oldDataSet
End Function
每条记录只有一个与之关联的附件。我想要某种方法来将该文件名作为字符串获取。
非常感谢,
【问题讨论】:
-
这个数据库是哪个版本的 Access?这些“附件”的字段类型是什么?查看该字段的 Table Design 视图,文件名存储在什么属性中?
-
Access 2013,字段类型为附件,我在设计视图的字段属性中看不到任何有用的信息。只是标题和必需的。
标签: vba ms-access filenames attachment ms-access-2013