API キーを使用して、自分のアカウントに接続するための Excel ドキュメントの VBA コードを取得できません。キーを正しい場所に置いているかどうかわかりません。アカウントをアップグレードして、課金を有効にしました。支払いをしようとしていますが、2,500 トランザクションを超えることはできません。助けてくれてありがとう。
編集 (7/20):
そこで、API キー '&clientid=EntersIDHere' の代わりに ClientID を使用するようにコードを更新しましたが、機能しますが、まだ 2500 トランザクションしか実行できません。
'Calculate Google Maps distance between two addresses
Public Function GetDistance(start As String, dest As String)
Dim firstVal As String, secondVal As String, lastVal As String
firstVal = "http://maps.googleapis.com/maps/api/distancematrix/json?origins="
secondVal = "&destinations="
lastVal = "&mode=car&language=en-US&clientid=EntersKeyHere"
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
URL = firstVal & Replace(start, " ", "+") & secondVal & Replace(dest, " ", "+") & lastVal
objHTTP.Open "GET", URL, False
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send ("")
If InStr(objHTTP.responseText, """distance"" : {") = 0 Then GoTo ErrorHandl
Set regex = CreateObject("VBScript.RegExp"): regex.Pattern = """value"".*?([0-9]+)": regex.Global = False
Set matches = regex.Execute(objHTTP.responseText)
tmpVal = Replace(matches(0).SubMatches(0), ".", Application.International(xlListSeparator))
GetDistance = CDbl(tmpVal)
Exit Function
ErrorHandl:
GetDistance = -1
End Function