2008-12-04 164 views
4

我有一個純文本文件看起來像這樣:導入文本文件分解到Excel

"some 
text 
containing 
line 
breaks" 

我想談excel 2004 (Mac, v.11.5)到正確打開此文件。我期望看到只有一個單元格(A1)包含上述所有內容(不包括引號)...

但是,唉,我無法做到這一點,因爲Excel似乎堅持使用CR作爲行分隔符,即使我將文本限定符設置爲雙引號也是如此。我有點希望Excel能夠理解那些換行符是價值的一部分 - 它們嵌入在雙引號中,應該將它們限定爲價值的一部分。所以我的Excel表格有5行,這不是我想要的。

我也試過這樣的AppleScript無濟於事:

tell application "Microsoft Excel" 
    activate 
    open text file filename ¬ 
    "Users:maximiliantyrtania:Desktop:linebreaks" data type delimited ¬ 
    text qualifier text qualifier double quote ¬ 
    field info {{1, text format}} ¬ 
    origin Macintosh with tab 
end tell 

如果我能告訴Excel中使用行分隔符比CR(或LF)等,那麼,我會成爲一個快樂的人,但練成似乎只允許改變字段分隔符,而不是行分隔符。

任何指針?

感謝,

最大 Excel的開放

回答

5

看起來我只是自己找到了解決方案。我需要將初始文件保存爲「.csv」。 Excel使用CSV文件正確表示換行符。通過applescript的作品也是如此。

再次感謝那些回覆。

最大

0

難道只是一個文件?如果是這樣,不要導入它。只需將您的文本文件的內容複製到第一個單元格(點擊f2,然後粘貼)即可。

如果你絕對必須編寫腳本,Excel實際上只使用這兩個字符(cr,lf)中的一個作爲行分隔符,但我不確定哪一個。嘗試首先用外部util(剝離cr)去除lf,然後導入它...如果這樣做不起作用,請去掉cr(離開lf)然後導入它。

+0

謝謝,但我需要CRs使它進入細胞... – 2008-12-04 12:53:54

+0

哎呀,只有現在我明白你的意思了。無論如何,csv文件適合我... – 2008-12-04 13:57:02

1

另一種選擇是創建一個宏來處理開放。打開文件進行輸入,然後將文本讀入工作表,根據需要使用Range對象解析。

+0

謝謝,實際上是個好主意,但我需要它與Excel 2008 Mac一起工作,並且不支持vba了... 最大 – 2008-12-04 12:59:27

1

如果你的文件有通過列表分隔符(逗號,分號但對於一些非英語的區域設置)分隔欄,將其重命名爲.csv和Excel中打開它。 如果您的文件有由TAB分隔的列,請將其重命名爲.tab並在Excel中打開它。 導入(而不是打開)csv或製表符文件似乎不理解文本分隔符之間的換行符。 :-(