如何將工作表數據保存為帶有或不帶有雙引號的 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 文件時,數據周圍的雙引號已被移除,如下圖所示:
最佳辦公效率工具
🤖 | Kutools AI 助手:基於智能執行方式革新數據分析:智能執行 | 生成代碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 函數… |
熱門功能:查找、標記重複值或識別重複項 | 刪除空行 | 合併列或單元格而不丟失數據 | 四捨五入無需公式 ... | |
高級 LOOKUP: 多條件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 .... | |
高級下拉列表:快速創建下拉列表 | 依賴下拉列表 | 多選下拉列表 .... | |
列管理器: 添加特定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 比較區域和列 ... | |
特色功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿與工作表管理器 | 資源庫(自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/斜體/刪除線...) ... | |
頂級 15 種工具集: 12 個文本工具(添加文本、刪除特定字符、...) | 50+ 圖表 類型(甘特圖、...) | 40+ 實用 公式(基於生日計算年齡、...) | 19 個插入工具(插入QR碼、根據路徑插入圖片、...) | 12 個轉換工具(金額轉大寫、匯率轉換、...) | 7 個合併與分割工具(高級合併行、分割儲存格、...) | ... 還有更多 |
使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。 點擊這裡獲取您最需要的功能...
Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
- 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
- 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!