【发布时间】:2013-01-08 20:14:45
【问题描述】:
背景信息: 我对 VBA 或 Access 不是很了解,但是我有一个 VBA 脚本,它可以在用户计算机上创建一个文件(具体来说是一个 KML,但这对我的问题来说并不重要)并写入它使用链接到数据库中记录的变量。因此:
Dim MyDB As Database
Dim MyRS As Recordset
Dim QryOrTblDef As String
Dim TestFile As Integer
QryOrTblDef = "Table1"
Set MyDB = CurrentDb
Set MyRS = MyDB.OpenRecordset(QryOrTblDef)
TestFile = FreeFile
Open "C:\Testing.txt"
Print #TestFile, "Generic Stuff"
Print #TestFile, MyRS.Fields(0)
等等。
我的情况: 我有一个非常大的字符串(一个包含大量多边形顶点坐标列表的文本文档),我想将它添加到要打印到另一个文件(KML 文件,在上面的示例中提到)的变量中。我希望将此包含坐标的文本文件作为附件数据类型添加到 Access 数据库中,并将其内容复制到要在上述脚本中使用的变量中。
我的问题: 有没有一种方法可以访问附加文本文件(作为 MS Access 数据库字段中的附件数据类型附加)中的数据并将其复制到变量中,以便我可以在 VBA 脚本中使用它?
我发现了什么: 我无法找到有关此主题的信息我认为主要是因为我不知道要搜索哪些关键字,但我能够在论坛“ozgrid”上找到某人的代码,这似乎接近什么我想要做。尽管它只是从磁盘上的文本文件中提取,而不是从附加到数据库的文本文件中提取。
来自上述论坛的代码,它创建了一个访问文本文件中数据的函数:
Sub Test()
Dim strText As String
strText = GetFileContent("C:\temp\x.txt")
MsgBox strText
End Sub
Function GetFileContent(Name As String) As String
Dim intUnit As Integer
On Error Goto ErrGetFileContent
intUnit = FreeFile
Open Name For Input As intUnit
GetFileContent = Input(LOF(intUnit), intUnit)
ErrGetFileContent:
Close intUnit
Exit Function
End Function
感谢您提供任何帮助。谢谢。
【问题讨论】:
-
您是否尝试过使用 fso(文件系统对象)。 stackoverflow.com/questions/9442215/…其他样品4guysfromrolla
-
感谢您的提示,正如我所说,我在搜索关键字方面有点碰壁。文件系统对象看起来适合我的目的。很有帮助。
标签: ms-access vba attachment