1

この既存のコードを変更して、全国の気象サービス フィードから一部の XML データを解析しました。自宅のコンピューター (Excel 2007) で問題なく動作します。Excel 2013 を使用している職場の PC/ネットワークでは実行されません。

次のエラーがスローされます。

実行時エラー '-2147012894 (80072ee2)':
オートメーション エラー

洞察はありますか?ネットワークの問題または 2007 ~ 2013 の互換性の問題ですか? ブラウザ内で問題なくフィードを解決できます。

Option Explicit

Sub GetData()


''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Variables
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Dim ws As Worksheet
Set ws = ActiveSheet

Dim Req As New ServerXMLHTTP
Dim Resp As New DOMDocument
Dim i As Integer
Dim Wthr As IXMLDOMNode
Dim geo As IXMLDOMNode
Dim cell As Range
Dim fn As WorksheetFunction
Dim y As Integer
Dim x As Integer


Set fn = Application.WorksheetFunction

Dim Eff, Exp, et, severity As String
Dim splitstring As Variant


ws.Range("A6").CurrentRegion.Clear

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Get Weather Alerts
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Req.Open "GET", "https://alerts.weather.gov/cap/us.atom", False
Req.send
Resp.LoadXML Req.responseText

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Write alerts to worksheet
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
y = 1
For Each Wthr In Resp.getElementsByTagName("entry")
    i = i + 1


    severity = Wthr.SelectNodes("cap:severity")(0).Text
et = Wthr.SelectNodes("cap:event")(0).Text

   For Each geo In Wthr.SelectNodes("cap:geocode")
   splitstring = Split(geo.SelectNodes("value")(0).Text, " ")
   For x = LBound(splitstring) To UBound(splitstring)
   y = y + 1
   ws.Cells(y, 1).Value = splitstring(x)
   ws.Cells(y, 2).Value = severity
     ws.Cells(y, 3).Value = et
   Next x
   Next

Next Wthr

End Sub
4

1 に答える 1