我想从 excel 创建一个 CSV 文件,其中字段中的所有数据都在双引号内。我从类似的问题中找到了这段代码,它几乎可以工作......
Sub CSVFile()
Dim SrcRg As Range
Dim CurrRow As Range
Dim CurrCell As Range
Dim CurrTextStr As String
Dim ListSep As String
Dim FName As Variant
FName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
If FName <> False Then
ListSep = Application.International(xlListSeparator)
If Selection.Cells.Count > 1 Then
Set SrcRg = Selection
Else
Set SrcRg = ActiveSheet.UsedRange
End If
Open FName For Output As #1
For Each CurrRow In SrcRg.Rows
CurrTextStr = ""
For Each CurrCell In CurrRow.Cells
CurrTextStr = CurrTextStr & """" & CurrCell.Value & """" & ListSep
Next
While Right(CurrTextStr, 1) = ListSep
CurrTextStr = Left(CurrTextStr, Len(CurrTextStr) - 1)
Wend
Print #1, CurrTextStr
Next
Close #1
End If
End Sub
它让我可以将选定的字段保存在 CSV 中,结果是这样的:
"A1","B1","C3"
"A2","B2","C3"
我还需要它做的是在最后一个字段后加一个逗号,如下所示:
"A1","B1","C3",
"A2","B2","C3",
我不知道这种代码,可以使用一些帮助。
此外,如果这可行,我如何将宏保存在 Excel 工作表中,以便我可以在需要时随时使用它。
谢谢约翰