- Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
110 :デフォルトの名無しさん[]:2015/09/20(日) 15:04:26.59 ID:yJDvCFfh - アマゾンの注文詳細ページから、住所などの必要な情報を抜き出すソフトを作ってます。
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
111 :sage[]:2015/09/20(日) 15:07:31.62 ID:yJDvCFfh - Sub GetTable3()
Dim ie As InternetExplorer 'IEを開いて操作対象画面へ遷移 Set ie = CreateObject("InternetExplorer.Application") ie.Visible = True ie.navigate "https://xxxxxxxxxxxxxxxxxx" Call waitNavigation(ie) Dim htdoc As HTMLDocument Set htdoc = ie.document Dim ObjTD As Object Set ObjTD = htdoc.getElementsByTagName("TD") Dim objDic As New Scripting.Dictionary Dim i() As String Dim SPL() As String Dim k As Integer ReDim Preserve i(5)
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
112 :sage[]:2015/09/20(日) 15:08:19.44 ID:yJDvCFfh - i(0) = SearchTD(ObjTD, "配送先住所:", 2)
i(1) = SearchTD(ObjTD, "注文日:", 2) i(2) = SearchTD(ObjTD, "出品者SKU:", 6) i(3) = SearchTD(ObjTD, "総計:", 2) i(4) = SearchTD(ObjTD, "小計:", 2) SPL = Split(i(0), vbCrLf) objDic.Add "郵便番号", SPL(1) objDic.Add "都道府県", SPL(2) objDic.Add "住所", SPL(3) objDic.Add "氏名", SPL(4) SPL = Split(i(1), vbCrLf) objDic.Add "注文日", Replace(SPL(0), "注文日:", "") objDic.Add "出荷予定日", Replace(SPL(1), "出荷予定日:", "") objDic.Add "配送予定", Replace(SPL(2), "配送予定:", "") For k = 0 To objDic.count - 1 Debug.Print objDic.Keys(k) & ":" & objDic.Item(objDic.Keys(k)) Next End Sub
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
113 :デフォルトの名無しさん[sage]:2015/09/20(日) 15:09:39.89 ID:yJDvCFfh - Function SearchTD(ObjTD As Object, Keyword As String, Num As Integer) As String
Dim ObjTag As Object Dim count As Integer For Each ObjTag In ObjTD If InStr(ObjTag.innerText, Keyword) > 0 Then count = count + 1 If count = Num Then SearchTD = ObjTag.innerText End If End If Next ObjTag End Function もっとスマートな方法ないでしょうか?
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
122 :113[sage]:2015/09/20(日) 17:02:28.33 ID:yJDvCFfh - >>114 >>115
APIがないので、力技でやっています。 >>118 目的のデータを抽出する方法が、 もっと工夫できるかなと思った次第です。 >>119 おっしゃる通り、配列とループでまとめられそうです! >>120 セミコロンの全角・半角は引っかかるところでした。 こういうの、困りますよね >>121 Amazonの記載を合わせて、配送予定にしたんですが、 確かに、違和感ありまくりですね
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
123 :113[sage]:2015/09/20(日) 17:06:50.78 ID:yJDvCFfh - あとは、抽出したデータをどうやって保持するかで悩んでます。
一時的に保持するのは、配列 or Dictionary型変数でいいとして、 恒久的に残す方法としては、DBとエクセルのセル、 ほかに、手段はありますか?
| - Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
125 :113[sage]:2015/09/20(日) 18:23:04.09 ID:yJDvCFfh - >>124
それは頭になかったです。 データの抽出個所が作り終わったら、 アマゾンの注文詳細ページを保存する処理を作ります。 ありがとうございました
|
|