質問: CreateObject("MSXML2.XMLHTTP") Call http.Open("GET", targetURI, False) Call http.setRequestHeader("Content-Type", "multipart/form-data") Call http.Send End Function ```
回答: ExcelのVBAが、という以前の問題で > > PHPまでGET送信でファイルを送りたい > > > というのが難しいのではないかと思います(基本的には無理かと思います)。 というのも、GET送信の場合、GETパラメータとして送れるのは文字列だけなのです。 「ファイル」の中身が文字列であれば、それをVBA側で読み取ってGETパラメータにつけて送信できるのですが、画像は文字列ではありません(バイナリデータといいます)。 ※一応、画像を文字列化する方法はあるものの(画像のバイナリデータを「データURIスキーム」というものに変換します)、そのやりかたを模索するくらいなら、GET送信ではなくPOST送信に切り替えたほうが素直ではないかと思います。 VBAでPOST送信でファイルをアップロードする方法を解説しているサイトがありましたので、ご紹介しておきます。 https://doruby.jp/users/ookouchi/entries/201708-EXCEL-VBA-API-FileUpload-multipart_form_data