Releases: PGS62/VBA-CSV
v0.31
v0.30
CSVWrite
now accepts an Encoding
argument of UTF-8NOBOM
and UTF-16NOBOM
in which case the file created does not contain a byte order mark.
v0.29
This release introduces new possibilities for handling quoted fields in which CSVRead
never removes leading and trailing quotes from fields and CSVWrite
never appends them. See the new K
option for the ConvertTypes
argument to CSVWrite
and the new Raw
option for the QuoteAllStrings
argument to CSVRead
.
v0.28
v0.27
v0.26
CSVRead
's argumentSkipToCol
, which determines the first column read from the file, can now be passed as a string matching an element of the file's header row.CSVRead
's argumentNumCols
can now be specified as a string matching an element of the file's header row, and this determines the rightmost column read from the file.
v0.25
v0.24
In this release CSVWrite
has changed behaviour on PCs for which the VBA display language is not English. Error values are written to file using their English language representation, such as #NAME?
, #DIV/0!
, #SPILL!
etc. This change ensures that "round-tripping" between CSVWrite
and CSVRead
is preserved.
v0.23
Earlier versions did not work correctly if the Office Display language was not English. This version fixes that.
v0.22
This release has improved performance for large files.
CSVRead
execution time is reduced by approximately 35% for large files in this release. This results from switching from using Scripting.TextStream
to using ADODB.Stream
for the low-level task of reading data from disk into a string variable (and working around the performance shortcoming of the latter). The relevant method is ReadAllFromStream
.
The largest file in RDatasets is 76Mb in size and has 1.4 million rows and seven columns. Time to execute CSVRead("C:\Projects\RDatasets\csv\openintro\military.csv")
falls from 22 seconds using v0.4 to 14 seconds using v0.22.