使用Excel VBA压缩CSV文件

时间:2018-04-18 09:05:03

标签: excel vba csv zip

我构建了一个将自定义csv文件写入磁盘的宏。我需要添加选项以压缩格式保存此文件。我对Ron de Bruins非常了解article,但面对的问题是我的zip文件是空的。

NewZip (FilePathZip) 'creates an empty zip file
Set objShell = CreateObject("Shell.Application")
objShell.Namespace(FilePathZip).CopyHere FilePathCSV

FilePathZip是我在这里创建的新zip文件的完整路径。 FilePathCSV是刚刚保存到磁盘的CSV的完整路径。有趣的是,当我在运行宏之前为已经存在的任何其他文件切换FilePathCSV时,它可以工作。显然,我在尝试压缩在宏运行时创建的文件时只遇到了这个问题。

我已经检查过exir是否通过Dir(FilePathCSV)识别了CSV路径,并确保在写入过程后文件被关闭。我也尝试过添加超时(Wait())。我不知道问题是什么。

1 个答案:

答案 0 :(得分:0)

FilePathCSV函数中包装Dir()解决了我的问题。我不确定为什么。

相关问题