vba - 如何连接 IP 地址?运行时错误 13,类型不匹配
问题描述
我知道我有问题
IPROUTER = (Left(IP, 11)) & ((Right(IP, 3)) + 5)
我应该如何写这行才能不出现标题错误?
Dim ID As String
Dim IP As String
Dim IPROUTER As String
ID = Mid(olItem.Subject, 20, 9)
IP = Right(olItem.Body, 14)
IPROUTER = (Left(IP, 11)) & ((Right(IP, 3)) + 5)
With objFile
.WriteLine "START " & Chr(34) & ID & Chr(34) & " ping" & IP & " -t"
解决方案
你得到一个Type mismatch
错误,因为你的代码,你试图将一个添加Integer
到 a String
(因为你的.
中有 a String
)。
假设您的 IP 地址是C类类型(如192.168.1.x
),您可以像这样更正您的代码:
IPROUTER = (Left(IP, 10)) & (Mid(IP, 11, 3) + 5)
这将适用于最后一个八位字节的大小,但您可能必须根据地址固定部分的长度更改某些内容。
希望这可以帮助。
推荐阅读
- templates - Netsuite 打印模板:无法访问实体字段
- reactjs - 使用 localStorage 在 React JS 中存储当前登录的用户数据
- c# - 使用 CSV 助手进行错误映射,一个字段的值为空
- node.js - 将标头发送给客户端后无法设置标头
- html - 字体真棒图标未显示在选择框中
- google-cloud-platform - Google Cloud Platform OAuth 应用程序验证问题
- wpf - (VB.NET) 对象引用未设置为对象的实例。无法解决问题
- ocaml - 如何在 OCaml 中结合函数的布尔和单位输出?
- html - 图像尺寸属性中允许哪些媒体条件?
- reactjs - 在 macos 上配置的 nginx 服务器中刷新时 react.js 应用程序显示 404