2008-12-04 210 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或制表符文件似乎不理解文本分隔符之间的换行符。 :-(