我有一個需要使用Excel VBA轉換爲CSV的excel文件。使用逗號將Excel文件轉換爲CSV VBA
所以對於我得到了下面的代碼:
Sub REPORT()
Dim ColNum As Integer
Dim Line As String
Dim LineValues() As Variant
Dim OutputFileNum As Integer
Dim PathName As String
Dim rowNum As Integer
'Create CSV file
PathName = Application.ActiveWorkbook.Path OutputFileNum = FreeFile
Open PathName & "\" & "Myfile" & ".csv" For Output Lock Write As #OutputFileNum
SheetValues = ActiveSheet.UsedRange
Range("A1").CurrentRegion.Select
With ActiveSheet.UsedRange
numbercolumns = .Columns.Count
End With
ReDim LineValues(1 To numbercolumns)
For rowNum = 1 To last
For ColNum = 1 To numbercolumns
LineValues(ColNum) = SheetValues(rowNum, ColNum)
Next
Line = Join(LineValues, ",")
Print #OutputFileNum, Line
Next
Close OutputFileNum
End Sub
我的問題是,當有在Excel文件中的任意單元格逗號。發生這種情況時,宏將單元格分成兩部分,並將一部分移動到下一列以覆蓋數據。
非常感謝
非常感謝。我喜歡你的想法 – fmmoraleda 2015-02-09 14:43:39
但爲什麼在單元格中有逗號?如果這是小數點分隔符,那麼CSV應該使用「;」而不是「,」之間的值。如果逗號在字符串中,則值應該放在雙引號之間。無需更改實際內容 – galinette 2015-02-10 08:48:33
嗨,如果用「#」替換「,」我怎麼能在創建csv時恢復它? – fmmoraleda 2015-03-05 09:39:47