ExcelのデータをUnicode形式のテキストデータとしてエクスポートするには、

どうしたらよいでしょうか?

下記するようなコードを書くと、
テキストデータでエクスポートできるのですが、
文字コードはShift-jisになってしまいます。

※"ファイル名をつけて保存"絡みのコードを使うのは、、
開いているファイルが~.xlsから~.txtになってしまうので嫌です。


Dim str2 As String
Dim txtmei As String
txtmei = CreateObject("WScript.Shell").SpecialFolders("Desktop") & _
"\" & Format(Now, "yymmdd_hhmmss") & ".txt"
fnum = FreeFile
Open txtmei For Output As #fnum

i = 1
str2 = Cells(1, 1)

Do Until str2 = ""
Print #fnum, str2 & vbCrLf;

i = i + 1
str2 = Cells(i, 1)
Loop

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/08/21 13:10:51
  • 終了:2007/08/28 13:15:03

回答(1件)

id:wnagata No.1

wnagata回答回数170ベストアンサー獲得回数182007/08/21 22:51:51

ポイント60pt

Printステートメントで出力するときにShift-jisに変換されてしまうので、Binary モードでファイルをオープンし、Put ステートメントで出力する必要があります。

Dim buffer As StringOpen "C:\Unicode.txt" For Binary As #1buffer = StrConv(strText2Write, vbUnicode) + _StrConv(vbCrLf, vbUnicode)Put #1, , bufferClose #1

http://alexdyb.blogspot.com/2007/06/how-to-write-out-unicode-tex...

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません