• ベストアンサー

文字のエンコードの仕方

お世話になります。 Excelで、Linuxマシンからテキストファイルを読み込むマクロを組みました。 ところが文字コードがEUC_JPのため文字化けしてしまいます。 VBAでEUC_JPをShift-JISにまたその逆を行う方法をご存知の方、ご教示ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 ふつうは、BASP21を使いますね。とても簡単ですから。(ただし、VBAの一通りの知識が必要です。)インストール(自分で設定するなら本来は必要ないけれど)したら、後は、参照設定すれば、以下のようにして使えるようになります。 Dim bobj As Basp21 Set bobj = New Basp21 ar =bobj.Kconv(txt, num) http://www.hi-ho.ne.jp/babaq/index.html 漢字変換(SJIS/JIS/EUC/UNICODE 相互変換 自動認識) でも、#1さんが示された中で、nkf32.dll が使えるような気がします。

catecholamine
質問者

お礼

ありがとうございます。 BASP21を使って無事エンコーディングできました。 随分いろいろな機能がありますね。便利なよいものを教えていただきました。 感謝いたします。

その他の回答 (1)

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

Vectorダウンロード>Windows95/98/Me>ユーティリティ>テキストファイル用>テキスト変換>文字コード変換 http://www.vector.co.jp/vpack/filearea/win95/util/text/conv/code/index.html のようなソフトから、コマンドラインで使用可能なものを探し、Shell関数で実行(※)して変換し、変換したファイルを読むとか。 ※実行終了を待つために、小細工が必要なハズ。

catecholamine
質問者

お礼

ありがとうございます。 お勧めのサイトは大変参考になりました。 VBの言語仕様にはエンコーディング機能が無くて、DLLを使う必要があるのだという事実を知っただけでもありがたいです。 VBを初めてまだ2日目なので右も左も分からなくて困っているところでした。

関連するQ&A