将excel导出到csv

我想从Excel复制数据。 以下是我想如何复制数据。 例如,我想在excel的单元格D4中将数据复制到csv中的 A4中。

 "Excel ---> CSV "D4-->A4 "F4&all excluding the first character in G4-->B4 "K4-->E4 "L4-->F4 "N4-->G4 "P4-->I4 

以下是我的代码。 它会根据需要创build和填充数据,但不会删除G4的第一个字符,即在csv复制到B4时。 有人可以告诉我如何改变我的代码来实现这一点。

 Sub csvfile() Dim fs As Object Dim a As Object Dim lngRow As Long Dim X Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.CreateTextFile("C:\temp\" & Environ("username") & ".csv", True) X = Range([d4], Cells(Rows.Count, "P").End(xlUp)).Value2 For lngRow = 1 To UBound(X) - 15 a.writeline X(lngRow, 1) & "," & X(lngRow, 3) & X(lngRow, 4) & ",,," & X(lngRow, 8) & "," & X(lngRow, 9) & "," & X(lngRow, 11) & ",," & X(lngRow, 13) Next a.Close End Sub 

你可以像这样操作第四列( G ):

完整的代码

 Sub csvfile() Dim fs As Object Dim a As Object Dim lngRow As Long Dim X Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.CreateTextFile("C:\temp\" & Environ("username") & ".csv", True) X = Range([d4], Cells(Rows.Count, "P").End(xlUp)).Value2 For lngRow = 1 To UBound(X) - 15 If Len(X(lngRow, 4)) > 0 Then X(lngRow, 4) = Right$(X(lngRow, 4), Len(X(lngRow, 4)) - 1) a.writeline X(lngRow, 1) & "," & X(lngRow, 3) & X(lngRow, 4) & ",,," & X(lngRow, 8) & "," & X(lngRow, 9) & "," & X(lngRow, 11) & ",," & X(lngRow, 13) Next a.Close End Sub