创建和管理日志.txt文件



我有 vba 代码要运行,其中包含许多函数,我想添加一个名为"WriteLog"的函数,它将创建(如果它不存在)一个名为 Log 的文本文件.txt并将字符串"text"(作为参数传递)写入该文件。

我希望从其他几个函数启动此函数以监视其执行。我的问题是我的实际代码覆盖了文本文件,而不是在调用函数时在其中添加新行。

这是我的实际代码:

Function WriteLog(text)
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Dim oFile As Object
    Set oFile = fso.CreateTextFile("C:Log.txt", True)
    oFile.writeline (text)
    oFile.Close
    Set fso = Nothing
    Set oFile = Nothing
End Function
Sub Logtesting()
    WriteLog ("Testing")
    WriteLog ("123")
End Sub

输出结果:

123

使用 OpenTextFile 而不是 CreateTextFile。

fso.OpenTextFile(filename, 8)

MSDN - 开放文本文件文档

Function WriteLog(text)
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Dim oFile As Object
    Set oFile = fso.OpenTextFile("C:Log.txt", 8)
    oFile.writeline text
    oFile.Close
    Set fso = Nothing
    Set oFile = Nothing
End Function

你需要使用 OpenTextFile 而不是 CreateTextFile,如下所示:

' Set oFile = fso.CreateTextFile("C:Log.txt", True)
Set oFile = fso.OpenTextFile("C:Log.txt", ForAppending, True)

最新更新