我正在运行 excel 并希望将我的文件导出为 .scsv(分号分隔值)表而不是 .csv。有没有办法做到这一点?
附:我不能做一个 .csv 并用分号搜索和替换逗号,因为这些字段已经包含逗号。
Rob*_*ert 23
如何使用制表符分隔并用分号替换制表符?
在excel中:文件->另存为->在格式中选择“制表符分隔文本(.txt)”然后保存。
在记事本中打开文件并打开替换窗口。由于您无法直接进入此窗口,因此请从文档中复制一个选项卡,然后将其粘贴到“查找”框中并将您的 ; 进入更换箱。然后全部更换。
我认为这会起作用,因为在 excel 文档中很少有选项卡。
我认为您不能直接在 Excel 中设置输出分隔符,但是(假设是 Windows)您可以将操作系统列表分隔符更改为;
- 这是在Regional Settings->Customize
. Excel 将使用该设置输出您的 csv 文件。
使用LibreOffice Calc(免费下载,适用于所有主要操作系统)。
保存为分号分隔值:
.csv
)LO Calc 将正确处理单元格值中的逗号和分号。
小智 5
如果您需要脚本,请将以下内容粘贴到模块中。
Option Explicit
Sub export2scsv()
Dim lastColumn As Integer
Dim lastRow As Integer
Dim strString As String
Dim i As Integer, j As Integer
lastColumn = ActiveSheet.UsedRange.Column - 1 + ActiveSheet.UsedRange.Columns.Count
lastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
Open "output.scsv" For Output As #1
For i = 1 To lastRow
Cells(i, 1).Select
strString = ""
For j = 1 To lastColumn
If j <> lastColumn Then
strString = strString & Cells(i, j).Value & ";" ' Use semicolon instead of pipe.
Else
strString = strString & Cells(i, j).Value
End If
Next j
Print #1, strString
Next i
Close #1
End Sub
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
235671 次 |
最近记录: |