如何將工作表數據保存為帶有或不帶有雙引號的 CSV 文件?
當您從 Excel 將一組數據導出或保存為 CSV 文件時,通常情況下,CSV 數據不會被雙引號包圍。但是,如果您的單元格值包含逗號或換行符,那麼導出的 CSV 數據將會被雙引號包圍。本文中,我將介紹如何根據需要將工作表數據保存為帶有或不帶有雙引號的 CSV 文件。
將工作表數據保存為帶有雙引號的 CSV 文件
要將普通數據保存為帶有雙引號的 CSV 文件,以下 VBA 代碼可能會對您有所幫助,請按照以下步驟操作:
1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。
2. 點擊 插入 > 模塊,並將以下代碼粘貼到模塊窗口中。
VBA 代碼:將工作表數據保存為帶有雙引號的 CSV 文件:
Sub CSVFile()
'updateby Extendoffice
Dim xRg As Range
Dim xRow As Range
Dim xCell As Range
Dim xStr As String
Dim xSep As String
Dim xTxt As String
Dim xName As Variant
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
xName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
xSep = Application.International(xlListSeparator)
Open xName For Output As #1
For Each xRow In xRg.Rows
xStr = ""
For Each xCell In xRow.Cells
xStr = xStr & """" & xCell.Value & """" & xSep
Next
While Right(xStr, 1) = xSep
xStr = Left(xStr, Len(xStr) - 1)
Wend
Print #1, xStr
Next
Close #1
If Err = 0 Then MsgBox "The file has saved to: " & xName, vbInformation, "Kutools for Excel"
End Sub
3. 然後按 F5 鍵運行此代碼,彈出一個提示框,提醒您選擇要保存為帶有雙引號的 CSV 文件的數據區域,請參見截圖:
4. 然後點擊 確定 按鈕,出現一個 另存為 窗口,請指定文件名和位置,然後點擊 保存 按鈕,請參見截圖:
5. 彈出一個 Kutools for Excel 的提示框,告訴您新的 CSV 文件已保存到您指定的位置,請參見截圖:
6. 點擊 確定 關閉對話框,現在,當您打開新的 CSV 文件時,所有數據都被雙引號包圍,如下圖所示:

使用 Kutools AI 解鎖 Excel 的魔法
- 智能執行:執行單元格操作、分析數據並創建圖表——所有這些都由簡單的指令驅動。
- 自訂公式:生成量身定制的公式,簡化您的工作流程。
- VBA 編碼:輕鬆編寫和實現 VBA 代碼。
- 公式解釋:輕鬆理解複雜的公式。
- 文本翻譯:打破電子表格中的語言障礙。
將工作表數據保存為不帶雙引號的 CSV 文件
如果您的數據在單元格內由逗號或換行分隔,當您將數據保存為 CSV 文件時,數據將被雙引號包圍,如下圖所示:
要將數據保存為不帶雙引號的 CSV 文件,請應用以下 VBA 代碼。
1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。
2. 點擊 插入 > 模塊,並將以下代碼粘貼到模塊窗口中。
VBA 代碼:將工作表數據保存為不帶雙引號的 CSV 文件:
Sub Export()
'updateby Extendoffice
Dim xRg As Range
Dim xRow As Range
Dim xCell As Range
Dim xStr As String
Dim xTxt As String
Dim xName As Variant
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
Set xRg = Application.InputBox("Please select data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
xName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
Open xName For Output As #1
For Each xRow In xRg.Rows
xStr = ""
For Each xCell In xRow.Cells
xStr = xStr & xCell.Value & Chr(9)
Next
While Right(xStr, 1) = Chr(9)
xStr = Left(xStr, Len(xStr) - 1)
Wend
Print #1, xStr
Next
Close #1
If Err = 0 Then MsgBox "The file has saved to: " & xName, vbInformation, "Kutools for Excel"
End Sub
3. 然後按 F5 鍵運行此代碼,彈出一個提示框,提醒您選擇要保存為不帶雙引號的 CSV 文件的數據區域,請參見截圖:
4. 點擊 確定 按鈕,顯示一個 另存為 窗口,請為您的新 CSV 文件指定文件名和位置,請參見截圖:
5. 然後點擊 保存 按鈕,彈出一個 Kutools for Excel 的提示框,告訴您新的 CSV 文件已保存到您指定的位置,請參見截圖:
6. 點擊 確定 關閉對話框,當您打開新的 CSV 文件時,數據周圍的雙引號已被移除,如下圖所示:
最佳 Office 辦公效率工具
🤖 | Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入... | |
高級 LOOKUP:多條件查找|多值查找|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ... | |
列管理器: 添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)... | |
前15 大工具集:12 款文本工具(添加文本,刪除特定字符,...)|50+ 種圖表 類型(甘特圖,...)|40+ 實用 公式(基於生日計算年齡,...)|19 款插入工具(插入QR码,按路徑插入圖片,...)|12 款轉換工具(金額轉大寫,匯率轉換,...)|7 款合併和分割工具(高級合併行,分割儲存格,...)| ...以及更多 |
利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...
Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆
- 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
- 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
- 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!