1

テキストファイルをExcelシートにインポートする必要があります。テキストファイルはMacとPCの両方からのものであり、さまざまな言語の文字が含まれています。Excel 2004(PC)の場合、MacでコーディングされたテキストをPCでコーディングするために、以下のようなvbaコードを使用することに成功しました。

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に変更されて完全に機能しますが、Excel2011で実行されるvbaプログラムはコーディングをまったく変更しません。TextFilePlatformパラメーター(私のバージョンのExcel 2011では、異なる言語バージョンがここで異なる可能性があります)を1、2、または3に設定でき(-1000000から1000000までの他の整数はエラー5になります)、結果のテキストは正確に次のようになります。これらの3つの場合も同じです。テキストコーディングを変換する試みを無効にする他の設定はありますか?どんな提案でも大歓迎です!

編集:上記のExcel 2011の場合とは異なり、.TextFilePlatform = xlWindowsのコードは、Windowsでコード化されたテキストをExcel 10(2001)およびExcel 11(2004)のMacコーディングに適切に変換することを確認しました。

4

2 に答える 2

1

Mac でこれを実現することはできません。唯一の解決策は、Windows でスクリプトを実行し、ファイルを Mac に戻すことです。

于 2012-10-22T16:02:18.793 に答える
0

これは素晴らしいオンラインソリューションZoho Sheet VBAです

はい、Microsoft Excel VBA で問題なく動作します。

于 2012-10-29T11:03:11.337 に答える