- ベストアンサー
VBAでEUC-JPのHTMLソースを取得しShift-JISにする方法
- VBAを使用して、EUC-JPのHTMLソースを取得しShift-JISに変換する方法について説明します。
- Msxmlを使用して任意のHTMLソースを取得し、そのソースをEUC-JPからShift-JISにエンコードします。
- ADODB.Streamを使用して、EUC-JPのHTMLソースをShift-JISに変換する手順を示します。
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- myObjにタグを格納してループはできない?
MSXML2.XMLHTTPの時は、 myObjにタグを格納してループはできないのでしょうか? Sub test() Dim objIE As Object Dim myObj As Object Set objIE = CreateObject("MSXML2.XMLHTTP") objIE.Open "GET", "http://○○.html", False objIE.send For Each myObj In objIE.Document.all.tags("p") Next Set objIE = Nothing End Sub 上記だと実行時エラー438になります。 Set objIE =CreateObject("InternetExplorer.Application") でループしないとダメでしょうか? Set objIE =CreateObject("InternetExplorer.Application") は時間がかかるので、できれば Set objIE =CreateObject("MSXML2.XMLHTTP") でやりたかったのですが、タグを格納できないのでしょうか?
- ベストアンサー
- オフィス系ソフト
- VBSでNull文字を半角スペースへ置換
バイナリデータを文字列として取得したいのですがお知恵をお貸し下さい。 Stirlingというツールで開くと ADDRESS 00000000、00000010の部分に ABC 123......... と .........A11111. の行があり Scripting.FileSystemObjectで1行目は ABC 123 と取得できるのですが2行目が[]となります 検索してNull文字で読み込めないのだろうとまでは見当が付き ADODB.streamでNull文字を半角スペースへ置換しようとして躓いています Dim strm Set strm = CreateObject("ADODB.stream") strm.Open strm.Type = 1 strm.LoadFromFile(FilePath) Dim ary1() Redim ary1(31) For i = 0 To 31 If ??? <> 0x00 Then ’←この部分 ary1(i) = strm(i) else ary1(i) = 20 ’半角スペース end if データの比較で躓いています どなたかご教授願えませんでしょうか よろしくお願いいたします
- ベストアンサー
- その他(プログラミング・開発)
- VBA システムエラー
始めまして VBA初心者です Excel2003のVBAで「toto」のサイトからデータを取得する プログラムを作成しようと思っています。 しかし「xmlHttp.responseText」の部分で 「実行時エラー '-1072896658(c00ce56e)':」 「システムエラー:-1072896658」 のエラーが出てしまいます。 解決方法をご教授いただけないでしょうか? '**************ソース********************************** Dim xmlHttp As MSXML2.xmlHttp Dim html As String Set xmlHttp = CreateObject("MSXML2.XMLHTTP") Call xmlHttp.Open("GET", "http://www.toto-dream.com/dc/SK0160.do", False) Call xmlHttp.send(vbNull) html = xmlHttp.responseText Set xmlHttp = Nothing '**************ソース**********************************
- 締切済み
- オフィス系ソフト
- VBScript で ADO Streamオブジェクトの Writeを使いたい
VBScriptでバイナリファイルを書き込みたいのですが、以下のコードで Writeしようとするとコンパイルエラーとなります。 なぜですか? Option Explicit Dim stream Dim i Dim line Set stream = CreateObject("ADODB.Stream") stream.Open stream.Type = 1 line = Array(61,0,13,0,10,0) stream.Write line stream.SaveToFile "bbb.txt", 2 stream.Close Set stream = Nothing
- 締切済み
- Visual Basic
- VBAでUTF-8文字を読込、Excelに出力する方法
タイトルの通りです。 簡単なプログラムを作ってみました。 このような事は出来ないのでしょうか。 教えてください。 宜しくお願いします。 ☆サンプルプログラム☆ ↓ Sub test() Dim Stm As Object Dim sText As String Const adCRLF = -1 Const adReadAll = -1 Const adTypeText = 1 sText = "あああ" Set Stm = CreateObject("ADODB.Stream") Stm.Open Stm.Charset = "UTF-8" Stm.WriteText sText ActiveSheet.Range("A1").Value = Stm.ReadText() Stm.Close Set Stm = Nothing End Sub
- 締切済み
- Visual Basic
- VB2005 で encoding="Shift_JIS"や"EUC-JP"のXMLファイルを保存する方法
VB2005, XML の初心者です。 VB2005で encoding="Shift_JIS" や "EUC-JP" のXMLデータをファイルに保存するにはどうすれば良いのでしょうか。 encoding="UTF-8"であれば、下記で保存できますが、="Shift_JIS" や "EUC-JP" になると保存でエラーになってしまいます。 下記ソースでは、strXMLには正しくXMLが入っていますが、saveするとエラーになり、ファイルの中身を確認すると、日本語の箇所で切れていました。 Public Client As TcpClient Dim stream As NetworkStream stream = Client.GetStream() Dim Data(10000) As Byte Dim len As Int16 = stream.Read(Data, 0, Data.Length) strXML = System.Text.Encoding.UTF8.GetString(Data, 0, len) MsxmlDoc = New MSXML2.DOMDocument Msxmldoc.Loadxml(strXML) MsxmlDoc.save ( "C:\XML.xml") 文字コードについても初心者ですので、ヒントになるようなことでも教えていただければ幸いです。 よろしくお願い致します。
- ベストアンサー
- XML
- VBScriptでEUC文字列をSJIS文字列に
VBScript+WSHを使って、変数に入っているEUC-JP文字列をShift_JIS文字列に変換したいのですが、ウェブで情報を探しても、ファイルを扱う物ばかりです。 Set stream = CreateObject("ADODB.Stream") stream.Charset = "EUC-JP" stream.Open stream.WriteText = eucstring ' この変数にはEUC-JP で文字列が入ってる stream.Position = 0 stream.Charset = "Shift_JIS" WScript.Echo "(" & stream.ReadText & ")" とかやってみましたが、だめです。まさか「いったんファイルに書けば可能だが書かないと不可能」ということもないと思うのですが。。。。。 元のEUC-JP文字列は、xmlHTTPrequestでウェブサイトから得た物なので、その段階でShift_JISに変換する方法があるのならそれでも良いです。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- CRLFをLFに変換したい
テキストファイルを 1)SJIS → UTF-8 2)CRLF → LF に変換させたいのですが、1)はうまく出来たのですが、 2)がうまくいかず困っています Set Src = CreateObject("ADODB.Stream") Src.Open Src.Type = 2 Src.Charset = "Shift_JIS" Src.LoadFromFile "test.txt" Set Dst = CreateObject("ADODB.Stream") Dst.Open Dst.Type = 2 Dst.Charset = "UTF-8" Dst.LineSeparator=10 Src.CopyTo Dst Src.Close Dst.SaveToFile "utf-out.txt", 2 Dst.Close 改行コードが何も変化しません。 どうすればよいか教えてください。 ADODBではじめからファイルに書き込んでいく方法でもかまいません。
- ベストアンサー
- Visual Basic
- 新規にメモ帳を起動して、「test」と入力したい
新規にメモ帳を起動して、「test」と入力したいです。そして保存はしたくないです。 Sub Sample() Dim rc As Long rc = Shell("notepad.exe", vbNormalFocus) End Sub これだと、新規にメモ帳は起動できますが、書き込みができません。 Sub Sample2() Dim strList As String Dim adoSt As ADODB.Stream Set adoSt = CreateObject("ADODB.Stream") With adoSt .Type = adTypeText .Charset = "UTF-8" .Open End With adoSt.WriteText "test", adWriteLine adoSt.SaveToFile "c:\test.txt", adSaveCreateOverWrite adoSt.Close Set adoSt = Nothing End Sub これだとメモ帳を作成して書き込めますが、保存されてしまいます。 新規にメモ帳を起動→文字を書き込む までをvbaで行い、その後は×ボタンで消せる状態にしたいのですが、 どうすればいいか教えてください。
- ベストアンサー
- オフィス系ソフト
- MSXML2によるファイル保存の最大容量
下記のjavascriptにて、インターネットよるファイル保存を考えています この方式ですと1回にて保存する容量の限界は何MBなのでしょうか? よろしくお願いします ※保存先の容量は、問題ない場合 ----< javascript >----- var objSrvHTTP = new ActiveXObject("MSXML2.XMLHTTP"); var Stream = new ActiveXObject("ADODB.Stream"); objSrvHTTP.open("GET", "http://localhost/test/abc.xls", false ); objSrvHTTP.send(); Stream.Open(); Stream.Type = 1; Stream.Write( objSrvHTTP.responseBody ) Stream.SaveToFile( "c:\\abc.xls", 2 ); Stream.Close()
- ベストアンサー
- JavaScript
- 以前使用していたPCが壊れたため、新しいPCにTOTALe(version4)を再インストールしましたが、「要求されたファイルを実行できません。指定されたファイルが見つかりません。」というエラーメッセージが表示され、インストールがうまくいきません。
- ソースネクストさんに問い合わせたところ、TOTALeのサポートは終了しているとの回答がありました。諦めるしかないのかもしれませんが、同じ経験をされた方がいれば、対処方法を教えていただきたいです。
- TOTALe(version4)の再インストール中に「要求されたファイルを実行できません。指定されたファイルが見つかりません。」というエラーメッセージが表示され、インストールができません。ソースネクストに問い合わせたところ、サポート終了との回答があったため、他の解決方法があるか教えてほしいです。
お礼
できましたー!!!! ありがとうございます。感動です。