我有一个Excel文件,其中有一些西班牙字符(波浪号等),我需要将其转换为CSV文件作为导入文件使用。然而,当我将另存为CSV时,它会破坏不是ASCII字符的“特殊”西班牙字符。它似乎也这样做的左右引号和长破折号,似乎是来自最初的用户在Mac中创建Excel文件。

由于CSV只是一个文本文件,我确信它可以处理UTF8编码,所以我猜这是Excel的限制,但我正在寻找一种方法,从Excel到CSV,并保持非ascii字符完整。


当前回答

我无法在Mac Excel上找到这个问题的VBA解决方案。似乎根本没有办法输出UTF-8文本。

所以我最终不得不放弃VBA,咬紧牙关,学习了AppleScript。情况远没有我想的那么糟。

解决方案如下: http://talesoftech.blogspot.com/2011/05/excel-on-mac-goodbye-vba-hello.html

其他回答

我知道这是一个老问题,但我碰巧在与OP同样的问题作斗争时遇到了这个问题。

没有发现任何提供的解决方案是可行的选择,我开始探索是否有一种方法可以只使用Excel来做到这一点。

幸运的是,我发现丢失字符的问题只发生(在我的情况下)从xlsx格式保存到csv格式。我尝试先将xlsx文件保存到xls,然后再保存到csv。它确实起作用了。

请试一试,看看对你是否有用。祝你好运。

另一个解决方案是用winword打开文件,并将其另存为txt,然后用excel重新打开,它将工作ISA

将xls文件(Excel文件)保存为Unicode text=>文件将保存为文本格式(.txt) 将格式从.txt更改为.csv(将文件从xyz .txt重命名为xyz .csv

您可以将excel保存为unicode文本,它是制表符分隔的。

另一个我觉得有用的例子是: “数字”允许在保存为CSV时进行编码设置。