2011-11-26 86 views
1

我需要將文本文件導入Excel工作表。文本文件來自Mac和PC,幷包含來自各種語言的字符。對於Excel 2004年(PC),我已經成功地使用VBA代碼類似下面的Mac編碼的文本轉換爲PC-編碼:Excel 2011(Mac)vba:將文本文件導入爲QueryTable時文本編碼失敗

Worksheets("A").Cells.Clear 
pth = Application.GetOpenFilename() 
With Worksheets("A").QueryTables.Add(Connection:="TEXT;" & pth, _ 
Destination:=Worksheets("A").Range("A1")) 
    .TextFilePlatform = 10000 
    .TextFileColumnDataTypes = Array(xlTextFormat) 
    .Refresh 
End With 
Worksheets("A").QueryTables(1).Delete 

我想使用類似的代碼用於Excel 2011的編碼從PC轉換到Mac ,使用

.TextFilePlatform = xlWindows '=2 

如通過運行宏記錄器所建議的。手動導入工作完美,將編碼從PC更改爲Mac,但在Excel 2011中運行的vba程序根本不會更改編碼。 TextFilePlatform參數可以(在我的Excel 2011版本中,不同的語言版本可能在此處有所不同)設置爲1,2或3(從-1000000到1000000之間的任何其他整數會給出錯誤5),並且生成的文本看起來與這三種情況一樣。是否有其他設置可以否定我嘗試轉換文本編碼的設置?任何建議不勝感激!

編輯:我已經確認使用.TextFilePlatform = xlWindows的代碼正確地將Windows編碼文本轉換爲針對Excel 10(2001)和Excel 11(2004)的mac編碼,與上述Excel 2011的情況相反。

回答

1

是不可能達到這個在Mac上,唯一的辦法就是與Windows運行腳本,併爲該文件回到MAC

0

這裏是一個不錯的在線解決方案Zoho Sheet VBA

是的,適用於您的Microsoft Excel VBA。

相關問題