0

このコードをSafariまたはFirefoxで動作させるにはどうすればよいですか?

Public Function getGoogDistanceTime(startAddr As String, startCity As String, _
startState As String, startZip As String, endAddr As String, _
endCity As String, endState As String, endZip As String) As String
Dim sURL As String
Dim BodyTxt As String
Dim apan As String
Dim oXH As Object
    sURL = "http://maps.google.com/maps?f=d&source=s_d&saddr="
    sURL = sURL & Replace(startAddr, " ", "+") & ",+" & Replace(startCity, " ", "+") & ",+" & startState
    sURL = sURL & "&daddr=" & Replace(endAddr, " ", "+") & ",+" & Replace(endCity, " ", "+") & ",+" & endState
    sURL = sURL & "&hl=en"
    Set oXH = CreateObject("msxml2.xmlhttp")
            With oXH
              .Open "get", sURL, False
              .Send
              BodyTxt = .RESPONSETEXT
            End With

            apan = Application.WorksheetFunction.Trim(apan)
            apan = Mid(BodyTxt, InStr(1, BodyTxt, "<div class=""altroute-rcol altroute-info"">") + 49, 200)
            apan = Left(apan, InStr(1, apan, "</span>    </div>") - 1)
            apan = Replace(apan, "</span>", "")
            apan = Replace(apan, "<span>", "")
            getGoogDistanceTime = apan
    Set oXH = Nothing
End Function
4

1 に答える 1

0

コードは、Internet Explorer 専用の言語である VBScript で記述されています。すべてのブラウザーで認識される JavaScript で書き直す必要があります。

を使用して、AJAX を実行するために IE 専用コードも使用していますmsxml2。オブジェクトを使用して、より一般的な AJAX コードを使用するように変更する必要がありXMLHttpRequestます。

何が何だかわかりませんがApplication.WorksheetFunction.Trim()、JavaScript の代替手段を見つける必要があります。

于 2013-01-31T16:30:22.530 に答える