web-dev-qa-db-ja.com

MS Excel:スプレッドシートをタブに保存-UNIXの行末とUTF-8で区切りますか?

UNIXの行末文字を含むテーブルを含むタブ区切りのテキストファイルがあります(つまり、\n)およびUTF-8エンコーディング。 [データ]→[インポート]を使用して関連オプションを選択すると、大きな問題なくMS Excel2010で開くことができます。ただし、[ファイル]→[名前を付けて保存]→[タブ区切り]を使用してテキストファイルに保存し直すと、DOSの行末(つまり、\r\n)および1バイトの国内Windowsエンコーディング(つまり、「ANSI」)。

もちろん、外部ツールを使用して適切な行末とエンコーディングを復元することはできますが、それは長期的には非常に面倒なことのように見えます。

UNIX EOLおよびUTF8で(つまり、インポート中に使用されたすべての設定を使用して)MS Excelでタブ区切りファイルを保存する簡単な方法はありますか?

4
GreyCat

簡単な答え:いいえ。 ExcelはVBAを使用せずにそれを行うことはできません。

さまざまなエンコーディングについて
チェック このStackoverflowの質問 さまざまなエンコーディング(UTF-8、UTF-16、Unicodeなど)について

Excelでできること
Microsoft ExcelcanANSI( Windows-1252 または ISO-8859)を使用してテキストファイルをエクスポートできます-1 、これは 非常に類似 )または nicode (UTF-16と同じ)を使用します。どちらにもDOSスタイルの行末([CR] + [LF]または '\ r\n'またはASCII HEXコード:0x0D0A))があります。

Excelでできないこと
Microsoft ExcelはUTF-8をエクスポートできず、UNIXスタイルの改行を使用できません([LF]または '\ n'またはin ASCII HEXコード:0x0D)。

このマイクロソフトサポート技術情報の記事 これが確認されている場所を参照してください。別のツール(メモ帳など)に戻って、ANSIファイルをUTF-8に保存します。

VBAの回答については、 このソリューション を参照してください。

3
agtoever