[算表] 请问用 VBA 抓取网络卡编号

楼主: CaoCao (超级讨厌统一)   2016-07-12 15:54:51
软件:2010
请问各位,我在网络上找到用 VBA 抓网络卡编号如下:
Sub 网络卡()
Dim IPConfigSet
Set IPConfigSet = _
GetObject("winmgmts:").ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration Where ((IPEnabled =
TRUE) And (MacAddress != NULL) And (SettingID != NULL))")
For Each IPConfig In IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
MsgBox IPConfig.MACAddress
End If
Next
End Sub
但是若执行当下没有开网络,不会发生任何事,连警告也不会有,
我想让它在没有网络时跳出警告视窗然后自动关闭 Excel,
请问该怎么修改?
作者: soyoso (我是耀宗)   2016-07-12 16:12:00
如以Win32_PingStatus,ping个外网,循环内再以statuscode判断是否为isnull或不为0
楼主: CaoCao (超级讨厌统一)   2016-07-12 17:23:00
请S大神明示,小弟功力浅,这一串我几乎都看不太懂~~~
作者: soyoso (我是耀宗)   2016-07-12 17:30:00
楼主: CaoCao (超级讨厌统一)   2016-07-12 17:48:00
感谢Soyoso大大 m(_ _)m
作者: Linkey (Linkey)   2016-07-12 17:57:00
想到的是判定IPConfigSet的Count不等于0但这样只能判定有作用中的网卡,不代表有连线原PO很努力找资料,给个推,加油!

Links booklink

Contact Us: admin [ a t ] ucptt.com