Libreoffice

在 Calc 中打開 CSV 時如何避免文本導入表單?

  • August 28, 2019

我經常需要在 Libre Office Calc(在 Linux Mint 上)中打開某種格式的 CSV 文件。格式始終是逗號分隔符,第一列是日期,如D/M/Y.

任何人都可以建議一種打開這些文件的方法,而不必在文本導入表單上重複指定格式,該格式通常在打開 CSV 時出現。

我很樂意考慮命令行選項、任何腳本或宏,甚至是 AutoKey 腳本。唯一的限制是它不應干擾打開不適合此格式的 CSV。

範例數據:

11 Jul 19, “Description 1”, 12.34
06/8/19, “Description 2”, 56.78
31/7/19, “Description 3”, 90.00

編輯 - 日期格式

當您將 A 列設置為 Date 類型時(在 Import Text 對話框中),混合日期格式由 Calc 處理。解決方案應包括此功能。

經過大量搜尋,我得出了這個答案。@Adobe 的評論連結到https://wiki.openoffice.org/wiki/Documentation/DevGuide/Spreadsheets/Filter_Options#Filter_Options_for_the_CSV_Filter,其中描述了過濾器選項。

這個命令對我有用:

libreoffice --calc mydata.csv --infilter=”CSV:44,34,0,1,4/2/1”

infilter 參數的內容說明

在類型之後,有五個逗號分隔的欄位:

1. Separator, 44 is the ASCII value of comma
2. Text delimiter, 34 is the ASCII value of double quote
3. Character set to use, 0 is the system default
4. Line number to start conversion. I have no header line, so it is 1
5. Cell format per column, separated by /. It does not seem to matter if there are a different number of columns in the data: Extra columns default to Standard, extra formats are ignored.
  4 = date d/m/y; 2 = text; 1 = standard

在 Calc 中打開文件後,我可以按時間順序排序並對數字列進行算術運算。

參考資料中還有很多其他選項,都同樣全面。

引用自:https://unix.stackexchange.com/questions/535547