Excel:如何仅在CSV文件中向字符串添加双引号

1 csv excel vba excel-vba

我想从Excel创建一个CSV文件,其中字符串值应该是双引号,日期值应该是MM/dd/yyyy格式.所有数值和布尔值都应该没有引号.

我该怎么做?

Day*_*own 7

Excel不允许您指定格式,这有点可怕.这是一个可能对您有用的MrExcel链接.

http://www.mrexcel.com/forum/showthread.php?t=320531

这是该网站的代码:

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
Run Code Online (Sandbox Code Playgroud)