【发布时间】:2020-06-22 10:09:28
【问题描述】:
我有一个 Access 数据库,它从不同来源提取信息并填充 .TXT 文件,然后将其导入另一个应用程序。
我的问题是我的 .TXT 文件中有引号,我只需要找到所有这些并使用 VBA 将它们替换为任何内容。
我有以下代码来打开文件并进行查找和替换。
Dim objFSO
Const ForReading = 1
Const ForWriting = 2
Dim objTS 'define a TextStream object
Dim strContents As String
Dim fileSpec As String
fileSpec = Forms![frm_MAIN_MENU]![txt_MAIN_ORDER_LOCATION].Value
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTS = objFSO.OpenTextFile(fileSpec, ForReading)
strContents = objTS.ReadAll
strContents = Replace(strContents, "", "")
objTS.Close
Set objTS = objFSO.OpenTextFile(fileSpec, ForWriting)
objTS.Write strContents
objTS.Close
End Sub
但是,引号内的引号让我很头疼。
【问题讨论】:
-
它是如何填充具有引号的文件(假设您的意思是单引号?)。如果它们存在于您正在收集的数据中,那么将它们从访问权限中剥离出来将是最简单的。如果它们是您用来写出 TXT 的机制的产物,那么也许这是您可以关闭的功能?
-
抱歉,我的问题含糊不清。我做了相应的调整
-
您看到的反逗号字符是什么。是
'还是"还是别的什么?
标签: vba ms-access replace find-replace