以下のページが参考になるかもしれません
NKF32.DLL で文字コード変換
http://www.geocities.co.jp/SilkRoad/4511/vb/nkf32dll.htm
--
TAKAHASHI Hisanori
EUCな方(?)にとっては nkf が伝統的というかメジャーですが,
VBA的には ADODB.Stream が標準機能内で(ADOの参照設定は必要ですが),
かつ扱いやすく, 品質も高いですよ。
ちょっと気をつけたいとのは「EUC/SJIS テキストを String 変数に」というのは
止めといた方が良いと思います。String変数は,常に Unicode だと思いますので。
* * * *
未試行・未デバグですが, 雰囲気だけ。
バッファをEUC StreamにWriteして, Streamオブジェクトごとコピーして,
SJIS StreamをバッファにReadするだけです。
Public Sub euc2sjis(ByRef bufEUC() As Byte, ByRef bufSJIS() As Byte)
Dim adoStreamEUC As ADODB.Stream
Dim adoStreamSJIS As ADODB.Stream
Set adoStreamEUC = New ADODB.Stream
With adoStreamEUC
.Open
.Type = adTypeBinary
.Charset = "EUC-JP"
End With
Set adoStreamSJIS = New ADODB.Stream
With adoStreamSJIS
.Open
.Type = adTypeBinary
.Charset = "SJIS"
End With
adoStreamEUC.Write bufEUC
adoStreamEUC.ToCopy adoStreamSJIS
adoStreamEUC.Read bufSJIS
adoStreamEUC.Close
adoStreamSJIS.Close
Set adoStreamEUC = Nothing
Set adoStreamSJIS = Nothing
End Sub
--
SETO Sohei [ PGP Key ID:0x5DF0FA4D ]
Gobo-city, Wakayama, JAPAN
mailto: s...@creamy.nax.ne.jp