1

我正在尝试将数据从 VBA 写入文本文件。我的语法没有显示调试或编译错误,但是当方法完成并打开文本文件时,它没有任何可读性。这一切似乎都是中文的。这是我的语法,是什么导致输出无法辨认?

Function WriteData(fulllocale As String, tblName As String, CString As String)
  Dim fso As Object
  Set fso = CreateObject("Scripting.FileSystemObject")

  Dim Fileout As Object
  'Set Fileout = fso.OpenTextFile("C:\Test.txt", ForAppending, True)
  Set Fileout = fso.OpenTextFile("C:\Test.txt", 8, True)
  Fileout.Write fulllocale & "," & tblName & "," & CString & vbCrLf
  Fileout.Close
End Function

编辑 - 附加信息
这些是传递的值(不是描述的粗体文本)
数据库名称: C:\Test\db1.accdb
表名:日志
连接信息: ODBC;DRIVER=SQL Server;SERVER=servername;UID =userid;PWD=密码;APP=Microsoft Office 2013;DATABASE=数据库



编辑 2
这是我用来调用的语法

Sub Testing()
Dim Fileout As Object
Dim fso As Object
Dim objFSO As Object
Dim accapp As Access.Application
Dim db As DAO.Database
Dim tdf As DAO.TableDef
Dim colFiles As Collection
Set objFSO = CreateObject("Scripting.FileSystemObject")

Dim objRegExp As Object
Set objRegExp = CreateObject("VBScript.RegExp")
objRegExp.pattern = ".accdb"
objRegExp.IgnoreCase = True

Set colFiles = New Collection

RecursiveFileSearch "C:\Databases\", objRegExp, colFiles, objFSO

For Each f In colFiles
    Set accapp = New Access.Application
    accapp.OpenCurrentDatabase (f)
    On Error Resume Next
    accapp.Visible = False
    Set db = accapp.CurrentDb
    For Each tdf In db.TableDefs
      If Not (tdf.Name Like "MSys*") Then
        WriteData CStr(f), tdf.Name, tdf.Connect
      End If
    Next
    Set tdf = Nothing
    Set db = Nothing
Next
Set objFSO = Nothing
Set objRegExp = Nothing

End Sub
4

0 回答 0