VBA:将 Visual Studio 代码链接到 Excel 输入单元格和输出表

小姐

对于网络抓取项目,我计划通过特定端口发送请求。为此,我必须使用 Microsoft Visual Studio,因为 Excel VBA 控制台不支持此类功能。

但是,相应的网络链接应直接来自 Microsoft Excel 表格。此外,理想情况下,网络抓取的结果应该输入到同一个 Excel 表格中。有什么方法可以将 Visual Studio 与特定工作表链接以达到这种目的?

到目前为止,我已经找到了有关使用 Excel 的 VSTO(Visual Studio Tools for Office)加载项的响应,但无法真正找到应用此类加载项工具的方法。请在下面找到我正在使用的代码,该代码在 Visual Studio 中运行良好,但缺少指向 Excel 的链接,如上所述。

Imports System.Net

Class Client
Inherits WebClient
Const username As String = "[USERNAME]"
Const password As String = "[PASSWORD]"
Const port = 22225
Public session_id As String = New Random().Next().ToString()

Public Sub New(Optional country As String = Nothing)
    Me.Proxy = New WebProxy("[PROXY]", port)
    Dim login = username &
        If(country IsNot Nothing, "-country-" & country, "") &
        "-session-" & session_id
    Me.Proxy.Credentials = New NetworkCredential(login, password)
End Sub

Protected Overrides Function GetWebRequest(address As Uri) As WebRequest
    Dim request = MyBase.GetWebRequest(address)
    request.ConnectionGroupName = session_id
    Return request
End Function
End Class


Module TermFinder
Sub Main()
    Console.WriteLine("Performing request(s)")
    Dim session As New Client()

    Dim x%, sheet As Variant
    For x = ActiveSheet.Index + 1 To Sheets.Count
    Set sheet = Sheets(x)

Next

    Dim url As String, lastRow As Long
    Dim XMLHTTP As Object, html As Object, objResultDiv As Object, objH3 As Object, link As Object
    Dim start_time As Date
    Dim end_time As Date
    Dim var As String
    Dim var1 As Object

    lastRow = Range("A" & Rows.Count).End(xlUp).Row

    Dim cookie As String
    Dim result_cookie As String

    start_time = Time
    Debug.Print "start_time:" & start_time

For i = 8 To 772

        url = "[Links to be covered]"

Set XMLHTTP = CreateObject("MSXML2.serverXMLHTTP")
XMLHTTP.Open "GET", url, False
XMLHTTP.setRequestHeader "Content-Type", "text/xml"
XMLHTTP.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0"
XMLHTTP.send

Set html = CreateObject("htmlfile")
html.body.innerHTML = XMLHTTP.responseText
Set objResultDiv = html.getElementById("rso")
Set var1 = html.getElementById("resultStats")
If Not var1 Is Nothing Then
            Cells(i, 7).Value = var1.innerText
        Else : Cells(i, 7).Value = "0 results"

        End If

        DoEvents

    Next

    end_time = Time
    Debug.Print "end_time:" & end_time

End Sub
End Module
小姐
  1. 安装 Office/SharePoint 功能作为 Visual Studio 程序的一部分。

  2. 在文件菜单上,指向新建,然后单击项目。

  3. 在模板窗格中,展开 Visual Basic,然后展开 Office/SharePoint。

  4. 在展开的 Office/SharePoint 节点下,选择 Office 加载项节点。

  5. 在项目模板列表中,选择 Excel 插件或打开 Excel 工作簿。

=> 这样,您应该能够在 Visual Studio 中使用完整的 Excel 工作簿。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将范围单元格的颜色链接到另一个单元格的 Excel 代码

Excel VBA,用于将单元格中的超链接公式链接到宏

将 SQL Server 链接到 Visual Studio

如何将opencv和其他dll文件链接到Visual Studio 2013的输出exe

使用VBA将超链接添加到表中的单元格-Excel

将C模块链接到Visual Studio中的MASM

如何将文本框链接到Excel中特定工作表上的特定单元格?

将Visual Studio代码(VSCode)连接到VirtualBox VM

确定单元格是否通过Excel中的VBA链接到QueryTable

如何将Visual Studio代码连接到Visual Studio Team Services

将Microsoft Excel单元格链接到Microsoft Powerpoint文件的特定页面

如何将Excel单元格链接到Web上的更新值?

如何将记录/单元格链接到 Excel 中的图表?全系列

将多个单元格从 Excel 链接到 Word 而不插入换行符

使用公式链接单元格填充汇总表的 Excel VBA 代码

是否有Python代码将值连接到Excel中的1个单元格

Excel VBA脚本可使用“是”和“否”(而不是“ true”和“ false”)插入链接到单元格的多个复选框

VBA Excel-根据用户输入将单元格值和关联的行获取到另一个工作表中

工作表之间的Excel VBA超链接功能无法激活单元格

Excel 2010在VBA链接的工作表上复制多个单元格

从单元格VBA Excel中获取显式工作表超链接

Visual Studio单元测试:从Excel运行

如何使用 VBA 代码根据单元格值隐藏 Excel 工作表

将Boost与Visual Studio和vcpkg链接时出错

将Qt应用程序与CMake和Visual Studio链接

链接到所有Visual Studio $变量

链接到visual studio动态库

表格组合框上的Excel VBA循环单元格链接

基于单元格值代码的 Excel vba 复制和粘贴不起作用