質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

1回答

13341閲覧

【VBA】URLにパラメータを加えて、webアプリケーションに処理させたい

Campanula_11

総合スコア10

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2016/05/30 07:05

###前提・実現したいこと
Google Apps script/VBA初心者です。
Google Apps scriptとVBAを使って、webアプリケーションを作っています。
Excelで入力したデータを、VBAによってURLとして送信し、Google Apps scriptで作成したwebアプリケーションに引数として受け渡したいです。
ご教授いただけたらと思います、よろしくお願いします。

###発生している問題・エラーメッセージ
Excelで入力したデータを、VBAによってURLとして送信することがうまくいきません。

下記のコードだと、objXmlHttp.send (param)が実行できないようです。

実行時エラー'70' 書き込みができません。

###該当のソースコード

VBA

1Sub post() 2 'HTTPリクエストオブジェクト 3 Dim objXmlHttp As Object 4 Set objXmlHttp = CreateObject("Microsoft.XMLHTTP") 5 6 Dim url As Variant 7 Dim param As Variant 8 url = "https://script.google.com/macros/s/google apps script によるweb applicationのID/dev?" 9 param = "param1=127&param2=154&param3=522&param4=112" 10 11 'POSTでオープン 12 objXmlHttp.Open "POST", url, False 13 'httpヘッダの設定(POSTの場合は必要らしい) 14 Call objXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded") 15 'パラメータの送信 16 objXmlHttp.send (param) 17End Sub 18

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

param ("param1=127&param2=154&param3=522&param4=112")には、&や=などの文字が含まれているのに、URLエンコードをしないまま使った事が原因だと思います。

param="param1%3D127%26param2%3D154%26param3%3D522%26param4%3D112" としてみてください。
引用符の中は、"param1=127&param2=154&param3=522&param4=112"をURLエンコードしたものです。

==
お使いのExcelがExcel 2013であれば、URLエンコードをする関数が追加されていますから、

param = "param1=127&param2=154&param3=522&param4=112"

の次に、URLエンコードするコード

param = Application.WorksheetFunction.EncodeURL(param)

を追加すればOK。

VBAでURLエンコードする方法は、いろいろありますので、Excel2013をお使いでなければGoogle検索してみてください。

投稿2016/05/30 07:55

coco_bauer

総合スコア6915

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Campanula_11

2017/01/18 04:58

お返事が遅くなりましたが、お陰様でうまく稼働しました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問