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

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

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

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

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

Q&A

解決済

1回答

904閲覧

エクセルで入力したものをwebページのフォームに入力

pironpa

総合スコア5

VBA

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

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

0グッド

0クリップ

投稿2020/02/13 04:40

編集2020/02/13 04:42

エクセルのセルに入力したものを自動的にWebページに入力するシステムを作成しています。VBA初心者で色々なサイトを見ながらつくってみたのですが、エクセルからWebページへの入力方法がよくわかりません。現在の状況としまして、特定のものをプログラムからwebページへかきこむことは成功しています。まだまだ未熟ですがよろしくおねがいします。

該当のソースコード

VBA

1ソースコード 2Sub test() 3 4'---1.インターネットに接続してブラウザを開く--- 5 Dim objIE As InternetExplorer 6 Set objIE = CreateObject("InternetExplorer.Application") 7 objIE.Visible = True 8 9'---2.インターネットの特定のページを開く--- 10 objIE.navigate "http://www.mercari.com/jp/sell/" 11 Call IEWait(objIE) 'IEを停止 12 Call WaitFor(3) '3秒停止 13 14'---3.IEに自動で文字入力して情報検索する--- 15 Dim htmlDoc As HTMLDocument 16 Dim tetSelect As HTMLSelectElement 17 Dim Btn As IHTMLElement 18 Set htmlDoc = objIE.document 19 Set tetSelect = objIE.document 20 'Set Btn = objIE.document 21 22 With htmlDoc 23 .getElementsByTagName("input")(1).Value = "りんご" 24 .getElementsByTagName("textarea")(0).Value = "おいしいりんごです" 25 Set objInpSel = .getElementsByTagName("select")(0) 26 objInpSel.selectedIndex = 13 27 '.getElementsByTagName("input")(3).Value = "ブランド" 28 Set objInpSel = .getElementsByTagName("select")(1) 29 objInpSel.selectedIndex = 1 30 Set objInpSel = .getElementsByTagName("select")(2) 31 objInpSel.selectedIndex = 1 32 Set objInpSel = .getElementsByTagName("select")(3) 33 objInpSel.selectedIndex = 13 34 Set objInpSel = .getElementsByTagName("select")(4) 35 objInpSel.selectedIndex = 1 36 .getElementsByTagName("input")(2).Value = "300" 37 'Set Btn = .getElementsByTagName("button")(1).Click 38 39 40 41 Call IEWait(objIE) 42 End With 43End Sub 44 45 46 47'---2-1.IEを待機する関数--- 48Function IEWait(ByRef objIE As Object) 49 Do While objIE.Busy = True Or objIE.readyState <> 4 50 DoEvents 51 Loop 52End Function 53 54'---2-2.指定した秒だけ停止する関数--- 55Function WaitFor(ByVal second As Integer) 56 Dim futureTime As Date 57 58 futureTime = DateAdd("s", second, Now) 59 60 While Now < futureTime 61 DoEvents 62 Wend 63End Function

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

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

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

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

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

m.ts10806

2020/02/13 06:27

そもそもメルカリってプログラムからの自動操作の許可されてるサイトでしたっけ。
guest

回答1

0

ベストアンサー

エクセルからWebページへの入力方法がよくわかりません。

アクティブなシートのA1セルの値を書き込むなら、下記のようなコードになります。

vba

1.getElementsByTagName("input")(1).Value = ActiveSheet.Range("A1").Value

あるいは下記のように座標で指定することも可能です。

vba

1.getElementsByTagName("input")(1).Value = ActiveSheet.Cells(1, 1).Value

投稿2020/02/13 05:06

hatena19

総合スコア34075

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問