Asp.net 如何自动将HTML可搜索查询数据导出到excel

Asp.net 如何自动将HTML可搜索查询数据导出到excel,asp.net,excel,xhtml,vba,Asp.net,Excel,Xhtml,Vba,我对从中提取数据感兴趣的网页有一个带有多个搜索字段的表。我可以在这些字段中输入数据,然后单击表格底部的“搜索”按钮,根据我想要搜索的信息查看结果 我有多个要搜索的数字(大约300个),而不是单独搜索每个数字,是否有方法自动搜索数据并将数据导入excel工作表中以搜索每个数字 是否可以使用Excel宏?您可以使用MSXML和MSHTML库进行此操作。这段代码应该让您开始学习。 首先运行此子项以添加两个引用(您只需运行此子项一次): 然后编辑getCAGEValues子项以导入您的CAGE代码并保存

我对从中提取数据感兴趣的网页有一个带有多个搜索字段的表。我可以在这些字段中输入数据,然后单击表格底部的“搜索”按钮,根据我想要搜索的信息查看结果

我有多个要搜索的数字(大约300个),而不是单独搜索每个数字,是否有方法自动搜索数据并将数据导入excel工作表中以搜索每个数字


是否可以使用Excel宏?

您可以使用MSXML和MSHTML库进行此操作。这段代码应该让您开始学习。
首先运行此子项以添加两个引用(您只需运行此子项一次):

然后编辑
getCAGEValues
子项以导入您的CAGE代码并保存生成的数据(以及您想要从页面中获取的任何其他数据):


你有没有一些例子,一些你做过的测试,一些代码和我们分享?您如何相信可以将excel vba与asp.net连接起来?你赢得了自动化的机会,因为编程本身就是一种自动化。答案是:也许吧。所以请重新措辞。。。是网站。我想输入CAGE代码并为我拥有的CAGE代码列表生成结果。非常感谢Kevin。这是一些很棒的信息!
Sub addReferences()
    ActiveWorkbook.VBProject.References.AddFromGuid "{3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}", 4, 0
    ActiveWorkbook.VBProject.References.AddFromGuid "{F5078F18-C551-11D3-89B9-0000F81FE221}", 6, 0
End Sub
Sub getCAGEValues()
    Dim oHTMLDoc As MSHTML.HTMLDocument
    Dim oSpan As MSHTML.HTMLGenericElement
    Dim CAGECodes() As Variant
    CAGECodes = Array("12345", "12346") 'CAGECodes is an array of your codes'
    For Each CAGECode In CAGECodes
        Set oHTMLDoc = getPage(CAGECode)
        Set oSpan = oHTMLDoc.getElementById("ctl00_cphMainPageBody_lblCompNameData") 'The id for the company name'
        MsgBox oSpan.innerText 'Save the value however you want to.'
    Next
End Sub

Function getPage(CAGECode As Variant) As MSHTML.HTMLDocument
    Dim oHttpRequest As MSXML2.XMLHTTP60
    Set oHttpRequest = New MSXML2.XMLHTTP60
    With oHttpRequest
        .Open "GET", "http://www.logisticsinformationservice.dla.mil/BINCS/details.aspx?CAGE=" & CAGECode, False
        .setRequestHeader "Cache-Control", "no-cache"
        .setRequestHeader "Pragma", "no-cache"
        .setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"
        .send
    End With
    Dim oHTMLDoc As MSHTML.HTMLDocument
    Set oHTMLDoc = New MSHTML.HTMLDocument
    oHTMLDoc.body.innerHTML = oHttpRequest.responseText
    Set getPage = oHTMLDoc
End Function