トップページ > プログラム > 2015年09月20日 > yJDvCFfh

書き込み順位&時間帯一覧

2 位/174 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000004021000007



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
sage
113
Excel VBA 質問スレ Part38 [転載禁止]©2ch.net

書き込みレス一覧

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
それは頭になかったです。
データの抽出個所が作り終わったら、
アマゾンの注文詳細ページを保存する処理を作ります。
ありがとうございました


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。