
こんにちは。
現在
1.Msxmlで任意のHTMLソースを取得
(ただこれがEUCで、エクセル上だと文字化けする)
2.それをShift-JISにエンコードして、のちのちExcel表にする)
というコードをExcelVBAで描いています。
ソースの取得はできるのですが、
EUCのサイトのため漢字が文字化けします。
エンコードしようと思ってもできません。
ADODB.Streamというものを使おうとしています。
宜しくお願い致します。
Dim xmlHttp
Set xmlHttp = CreateObject("Msxml2.XMLHTTP")
xmlHttp.Open "GET", url, False
xmlHttp.send
Set in_strm = CreateObject("ADODB.Stream")
Set out_strm = CreateObject("ADODB.Stream")
in_strm.Charset = "EUC-JP"
in_strm.Type = adTypeText
out_strm.Charset = "Shift_JIS"
out_strm.Type = adTypeText
in_strm.Open
out_strm.Open
m_byte1 = xmlHttp.responseText
in_strm.WriteText m_byte1
in_strm.Position = 0
in_strm.CopyTo out_strm
out_strm.Position = 0
m_string2 = out_strm.ReadText(adReadAll)
MsgBox m_string2 'ここで正しいものが表示される予定・・・
in_strm.Close
out_strm.Close
Set in_strm = Nothing
Set out_strm = Nothing
No.2ベストアンサー
- 回答日時:
文字化けしなければ良いですか?
Sub test1()
Dim xmlHttp
Dim URL As String
Dim in_strm
Dim m_string2
URL = "http://www.mapfan.com/"
Set xmlHttp = CreateObject("Msxml2.XMLHTTP")
xmlHttp.Open "GET", URL, False
xmlHttp.send
Set in_strm = CreateObject("ADODB.Stream")
in_strm.Open
in_strm.Position = 0
in_strm.Type = 1 'adTypeBinary
in_strm.Write xmlHttp.responseBody
in_strm.Position = 0
in_strm.Type = 2 'adTypeText
in_strm.Charset = "EUC-JP"
'in_strm.Charset = "_autodetect" '自動判別でも可
m_string2 = in_strm.ReadText
MsgBox m_string2
in_strm.Close
Set in_strm = Nothing
End Sub
No.3
- 回答日時:
文字コードの変換は、下記スレッドで
KenKen_SPさんの回答が参考になるかも知れません。
VBAでUTF-8文字を読込、Excelに出力する方法
http://oshiete1.goo.ne.jp/qa1963113.html
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL MYSQL エラー 2 2022/10/18 11:37
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- C言語・C++・C# [至急]Project Euler:#17Number letter countsコード入力出力解説 2 2022/09/24 02:46
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
- 英語 英文の添削お願いします。【長文です。】 マッチングアプリで相手を言い負かしている時のやつです。 色々 1 2023/07/01 02:12
- 英語 文の構造をご教示ください 2 2023/01/01 18:03
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
System.err. printlnとSystem.o...
-
1~100までの数字を表示したい
-
int型で表示したいのですが・・・
-
PrintWriterクラスのバッファ機...
-
1~100までの数字を表示し、か...
-
system.out.printが出力されない
-
JavaScriptの変数をjavaのメソ...
-
Javaで改行などが出来ないのです。
-
flush()とclose()について
-
Javaの問題なのですが、 永久ル...
-
PrintWriterとBufferedWriterの...
-
行ごとに文を単語単位で逆順に...
-
Log4jで機能毎に別ファイルへ出...
-
System.out.printlnの出力先
-
サーブレットPrintWriterについて
-
log4jでスタックトレースを出力...
-
ハートマークを表示するには?
-
JSPでHTMLの表示が優先されてし...
-
Javaでの改行コード
-
Java swing エクセル書き込み
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
System.err. printlnとSystem.o...
-
System.out.printlnの出力先
-
flush()とclose()について
-
Log4jで機能毎に別ファイルへ出...
-
system.out.printが出力されない
-
Javaで改行などが出来ないのです。
-
Tomcatが無応答となる現象が起...
-
1~100までの数字を表示したい
-
一定のスペースを空けて端を揃...
-
InputStreamはreadが1回しかで...
-
Log4Jではログを改行できない?
-
Eclipseのコンソールを常に表示...
-
1~100までの数字を表示し、か...
-
switch分が機能しません。
-
数字文字列をパック10進数に変...
-
javaにおけるCSV出力時の文字コ...
-
tomcatのstdout.logを停止したい。
-
Java 九九の表について
-
VBSエラー"オブジェクト型の変...
-
Java swing エクセル書き込み
おすすめ情報