【ExcelVBA】Shift-JIS以外でテキストファイルを書き出す

Fu○k Shift-JIS

Excelは基本的にShift-JIS(正確には拡張したWindows-31J)しか使わない。テキストファイルを読み書きしようにも、他の文字コードが使えないのだ。

特にLinuxに置くパラメータやプロパティ、XMLでさえも書き出せない。

テストデータ自動作成ツールとして失格じゃないか。なんで拡張しないんだ。

 

救世主 ADODB.Stream

よくいわれる解決策が「ADODB.Stream」コンポーネント

.NETが使える環境では触りたくない類の多機能複雑かついろんな用途に届かないカオスな機能だが、動作速くてコードをラップすれば十分使える。

 

使い方まとめるの面倒くさいので、参考させていただいたURLを置く。

ADODB.Streamを使ったテキストファイルの読み書き | SugiBlog

 

UTF-8で書き出す場合は、なぜかBOMつきになる(やっぱりF○ck)

先駆者様がいらっしゃったので以下参考させていただいた。

qiita.com