Sample code for 30+ languages & platforms
VBScript

CSV Insert Column

See more CSV Examples

Insert a new column into an existing CSV.

Note: This example requires Chilkat v9.5.0.89 or greater because the InsertColumn method was added in v9.5.0.89.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

set csv = CreateObject("Chilkat.Csv")

' Load the following CSV:

'  Name;City;Weight
'  John;Chicago;180
'  Lisa;Denver;120

' Indicate that the 1st line contains column names.
csv.HasColumnNames = 1
success = csv.LoadFile("qa_data/csv/insertColumnTest.csv")

' We can insert a column before the 1st column.
success = csv.InsertColumn(0)

outFile.WriteLine(csv.SaveToString())

' The CSV now looks like this:

'  ;Name;City;Weight
'  ;John;Chicago;180
'  ;Lisa;Denver;120

' Set the cells in column 0.

col = 0
success = csv.SetColumnName(col,"id")
success = csv.SetCell(0,col,"100")
success = csv.SetCell(1,col,"101")

outFile.WriteLine(csv.SaveToString())

' We now have:

'  id;Name;City;Weight
'  100;John;Chicago;180
'  101;Lisa;Denver;120

' Insert a new column between City and Weight
' In other words, add a new column before the Weight column.
weightColumn = csv.GetIndex("Weight")
outFile.WriteLine("Weight Column Index = " & weightColumn)
success = csv.InsertColumn(weightColumn)

outFile.WriteLine(csv.SaveToString())

' We now have:

'  id;Name;City;;Weight
'  100;John;Chicago;;180
'  101;Lisa;Denver;;120

' Set the cells in the new column:

success = csv.SetColumnName(weightColumn,"Height")
success = csv.SetCell(0,weightColumn,"6' 2""")
success = csv.SetCell(1,weightColumn,"5' 7""")

outFile.WriteLine(csv.SaveToString())

' We now have:

'  id;Name;City;Height;Weight
'  100;John;Chicago;"6' 2""";180
'  101;Lisa;Denver;"5' 7""";120

outFile.Close