excel - 使用 Excel VBA 进行套接字连接

标签 excel vba vb.net sockets port

我有一个 VB.NET 应用程序,它成功地将字符串发送到指定的 IP 地址和端口。

Public Sub BroadcastData(ByVal toSend As String, ByVal PortToSendTo As Long)
    Dim s As New Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp)
    Dim sendBUF As Byte() = Encoding.ASCII.GetBytes(toSend)
    Dim ep As New IPEndPoint(MainForm.IPToBroadcastTo, PortToSendTo)
    s.SendTo(sendBUF, ep)
    System.Diagnostics.Debug.WriteLine(s.SendTo(sendBUF, ep))
End Sub

IPToBroadcstTo 是本地网络上远程计算机的 IP 地址。

在这台远程计算机上,我可以接收该字符串并使用 VB.NET 执行我想要的操作。

我想在 Excel 中接收字符串并将其写入单元格。

最佳答案

您发布的代码是VB.NET。 Excel 使用 VBA,虽然它共享一些通用语法,但它是一种完全不同的语言,具有较少的库集。

例如,VBA 中没有 SocketIPEndPoint 类。

简而言之,答案是您不能使用该代码在 Excel 中打开套接字。

看看 Winsock控制或

也许您可以编写一个 .NET 程序集并通过 COM interop 公开它允许在 Excel 中使用它。

关于excel - 使用 Excel VBA 进行套接字连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21839142/

相关文章:

Excel公式创建两个日期之间的年份范围

excel - 从 Word 文档访问 Excel 电子表格

调用 MS 项目任务的唯一 ID 时出现 Excel VBA 错误

VBA 通过 Excel 2007 在 xls 文件中创建版本 10 数据透视表

wpf - 在设计时绑定(bind)到 WPF 标签、按钮等?

vba - 制作 Excel 宏以快速输入数据::: VBA::: Excel:::

excel - 如何在忽略缺失值(编码为 999)的同时在 Excel 中将值相加?

Excel 工作表属性窗口显示为空白

c# - 在 32 位和 64 位开发站上部署 .Net App Source Control (SVN)

c# - 错误处理: Raise Events or Manually Throw Exception