無法將數字格式套用至 Excel 中中等大小的 CSV 檔案中的列

無法將數字格式套用至 Excel 中中等大小的 CSV 檔案中的列

我有一個中等大小的 CSV 檔案(195,000 行)。如果我編輯檔案並在檔案中保留較小的行子集(10-20 行),我就可以格式化該列。

這是 Excel 已知的問題嗎?當然,我可以將其儲存為實際的 Excel 電子表格文件,然後一切正常,但我想知道到底發生了什麼。

答案1

是的,這是 Excel 中已知的行為。

Excel 不允許您設定 CSV 的匯入,因此您無法以提及的方式影響它。這就是問題能夠存在的方式。如果可以的話,就永遠不會觸及這個問題。

我將描述該問題,但沒有執行我提到的操作的詳細資訊。它可以在互聯網上找到,但我記得它花了一些時間才找到,而我現在沒有。我對那部分錶示歉意。

問題是,當 Excel 匯入 CSV 等文件時,它實際上只查看每列資料中的前 16 條記錄,以便決定在匯入時如何設定該列的格式。是的。 16 筆記錄,即使預期負載為 195,000 行或 100 萬行。

一些好的觀點是:在資料中,行通常具有相當的代表性,並且還考慮對記憶體的影響和讀取整個資料集的速度以及決定如何匯入列。 (我自己會承受這一擊,但是......)

然而,考慮一下我一兩個月前在這裡遇到的一個例子,其中時間的格式是小時和分鐘,或者可能是分鐘和秒。因為數據可能是按實際情況或按其創建方法排序的,按時間排序,當然,一兩分鐘和幾秒鐘是起始記錄。那裡不起作用,是嗎?

有一種方法可以讓 Excel 在決定如何設定列格式之前查看盡可能多的記錄,這就是需要研究的方法。這就是該問題的程序內解決方案。

(如果 Excel 讓您像 TXT 檔案一樣強制格式化,那麼它實際上可以讓您控制這方面,但...您知道...Excel...)

其他解決方案不在 Excel 範圍內。例如在開頭添加一些具有表單/材質的行來強制您需要的格式。稍後刪除它們。或進行編輯以將一堆行從中間移動到開頭。那種事。非常好,相對簡單,但誰不喜歡程式內解決方案,對吧?

Excel 包含多種匯入內容以及簡單開啟 CSV 檔案的方法。其中之一可能適合您的需要,並且它們似乎允許必要的控制。

順便說一句,我遇到了一個正在研究問題的程序,這些程序獲取自己的數據並從中創建 Excel 電子表格,並包含公式和格式,似乎面臨著這個問題。似乎有些人在某種程度上使用 Excel 本身,而不是自己編寫所有程式設計。確實如此,但隨後他們就成為 Excel 缺點的受害者。當然,我指的是功能,不是缺點...

相關內容