如何通过VBA附加CSV文件而不读取空格式的单元格

时间:2019-07-05 01:13:39

标签: excel vba csv append

我有一个代码,能够将工作表中的一系列数据附加到现有的CSV文件中。但是,我注意到,当现有CSV文件包含空的但格式化的单元格超出数据范围的末尾时,Append函数也将这些空单元格也考虑在内。

例如,现有的CSV文件具有10行数据,而第11至20行为空,但已被格式化(例如,格式为“ dd-mmm-yy”)。因此,当我附加CSV文件时,新数据将添加到第21行而不是第11行。

除了手动删除CSV文件中的第11到20行外,是否可以快速解决此问题?我有很多现有的CSV文件,因此手动操作是不可行的。至于为什么某些行为空但被格式化的原因,是由于之前进行了一些修改。

感谢帮助。

1 个答案:

答案 0 :(得分:0)

  

具有代码,该代码可以将工作表中的一系列数据附加到现有CSV文件中。但是,我注意到,当现有CSV文件包含空的但格式化的单元格超出数据范围的末尾时,Append函数也将这些空单元格也考虑在内。

如果您已编写该代码,则它需要考虑您要忽略的格式化单元格。假设您正在将数据从.xlsx文件交换为.csv文件,而所有这些操作都是在Excel平台内完成的。然后,例如,如果“常规”是最适合您的格式,但是.csv列A(工作表1)中的某些尾随单元格不是这种格式,则让您的代码在循环中评估CSV Worksheets("Book1").Range("A[whatever row]").NumberFormat = "General"

然后让您的代码将没有的代码更改为General;然后继续追加。