Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7432 / 76732 ←次へ | 前へ→

【74887】String引数にUTF-8文字列を渡す方法
質問  りった  - 13/10/21(月) 17:33 -

引用なし
パスワード
   いつもお世話になっております。下記御存じの方がいらっしゃいましたら、ご教示頂きますようお願いします。

■質問
関数の引数(ByVal xxx As String)にUTF−8の文字列を渡す方法をご教示下さい。
尚、文字列の入力元はワークシートのセルの内容です。

■背景
ブラウザから手動でhttpコマンド(※1)を叩く試験を、マクロ化しようとしています。
コマンド送信は出来るのですが、ブラウザから実行する場合とマクロから実行する場合で
文字コードに違いがあるようです。(※2)
試験内容を変えずにマクロ化する必要があるので困っています。


※1 開発している装置に送るコマンドと戻りがhttp。
  イメージ: http://10.10.2.3/set_xxx?xxx=1 とブラウザのURL欄に入力すると、
        result=OK と記載されたWebページが表示される。

※2 ブラウザのURL欄に入力するとUTF−8で下記コマンドを実行
  http://10.10.2.3/set_yyy?yyy=あいう (意味:パラメータyyyに「あいう」を設定)
  http://10.10.2.3/get_yyy      (意味:パラメータyyyを取得)

  → ブラウザから実行した場合は、 yyy=%e3%81%82%e3%81%84%e3%81%86 が返る。(UTF−8)
    マクロから実行した場合は、 yyy=%82%a0%82%a2%82%a4 が返る。(S−JIS)

■補足
下記APIを使用してhttpコマンドを実行しています。
Private Declare Function httpOpenRequest _
      Lib ”wininet.dll” _
     Alias ”httpOpenRequestA” _
     (ByVal hConnect As Long _
    , ByVal lpszVerb As String _
    , ByVal lpszObjectName As String _ ← ここがURL
    , ByVal lpszVersion As String _
    , ByVal lpszReferer As String _
    , ByVal lpszAcceptTypes As Long _
    , ByVal dwFlags As Long _
    , ByVal dwContext As Long) As Long

「ERROR:本文に禁止語句が含まれています。」
と表示されたので、全て全角に変換しています。
変換前は、英数は半角です。。

以上です。

293 hits

【74887】String引数にUTF-8文字列を渡す方法 りった 13/10/21(月) 17:33 質問
【74890】Re:String引数にUTF-8文字列を渡す方法 りった 13/10/22(火) 9:18 質問
【74891】Re:String引数にUTF-8文字列を渡す方法 Abyss 13/10/22(火) 12:42 発言
【74897】Re:String引数にUTF-8文字列を渡す方法 りった 13/10/22(火) 14:58 お礼
【74901】Re:String引数にUTF-8文字列を渡す方法 Abyss 13/10/22(火) 15:59 発言
【74904】Re:String引数にUTF-8文字列を渡す方法 γ 13/10/22(火) 19:59 発言

7432 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free