|
发表于 2016-10-21 11:45
|
显示全部楼层
本楼为最佳答案
- Sub test_XWZ()
- Dim strText As String, data As Object, bId, bList
- Dim brr(1 To 1000, 1 To 9), ar(2)
- ar(0) = Array("交标序号", "投标单位", "报价(万元)", "工期", "质量", "差值(万元)", "评标序号", "项目经理", "审查结果")
- ar(1) = Array("projname", "openDate", "bidPriceNotes")
- ar(2) = Array("comNum", "deptName", "bidDataQuote", "bidDataDays", "bidDataQa", "diffValue", "evaOrder", "mgrName", "checkResult")
- With CreateObject("MSXML2.XMLHTTP")
- .Open "POST", "http://www.qzzb.gov.cn/liveBroadcast/getLiveBidderNotList.do", False
- .setRequestHeader "Content-Type", "application/json;charset=UTF-8"
- .Send "{bidProjId:21257}"
- strText = .responsetext
- End With
- With CreateObject("msscriptcontrol.scriptcontrol")
- .Language = "JavaScript"
- .AddCode "var mydata=" & strText
- Set objJSON = .CodeObject
- End With
- For i = 0 To 2
- brr(i + 1, 1) = CallByName(objJSON.mydata.data, ar(1)(i), VbGet)
- Next
- i = i + 1
- For j = 0 To 8
- brr(i, j + 1) = ar(0)(j)
- Next
- For Each bList In objJSON.mydata.data.bidderList
- i = i + 1
- For j = 0 To 8
- brr(i, j + 1) = CallByName(bList, ar(2)(j), VbGet)
- Next
- Next
- [a2:i1000] = ""
- [a2].Resize(i, 9) = brr
- End Sub
复制代码
如何用vba提取网页数据.rar
(57.58 KB, 下载次数: 7)
|
|