使用Excel VBA进行套接字连接

时间:2014-02-17 20:58:09

标签: 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中收到字符串并将其写入单元格。

1 个答案:

答案 0 :(得分:1)

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

例如,VBA中没有SocketIPEndPoint类。

因此,简而言之,答案是您无法使用该代码在Excel中打开套接字。

查看Winsock控件或

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