保存文本文件而不关闭它

时间:2014-02-12 08:01:40

标签: vba excel-vba excel

有很多关于如何在VBA中写入文本文件的信息,但我需要的是在不关闭文件的情况下编写并保存。我运行一些耗时的宏,并且需要不时保存信息,因为宏容易崩溃。

这就是我现在所拥有的

    sFile = ThisWorkbook.Path & "\" & wsRes & ".txt"
    lFile = FreeFile
    Open sFile For Append As lFile
    Print #lFile, "======" //this is where I need to save the file as well.
    Close lFile

祝你好运

1 个答案:

答案 0 :(得分:1)

我担心除了使用Close然后再重新打开它之外,VBA不能这样做。 Scripting.FileSystemObject也缺少此功能。

要拥有可刷新文件输出,可以使用Windows API写出文件。这里的指针是CreateFile&用于打开/关闭文件的CloseHandle,用于写入文件的WriteFile,以及用于写入写入缓冲区中剩余内容的FlushFileBuffers。