Come calcolare la distanza in Excel con Google Maps

  • Condividi Questo
Hugh West

Excel ha un'ampia gamma di applicazioni e, mentre si utilizza VBA allora sembra che si possa fare tutto quello che si vuole in Excel. Quindi, ovviamente, possiamo trovare la distanza tra i luoghi In questo articolo mostrerò una guida rapida per calcolare la distanza in Excel con Google Maps, con passaggi precisi e illustrazioni chiare.

Scarica il quaderno di esercizi

Potete scaricare la cartella di lavoro Excel gratuita da qui ed esercitarvi da soli.

Calcolo della distanza con Google-Maps.xlsm

Utilizzo di una funzione definita dall'utente per calcolare la distanza in Excel con Google Maps

Qui, ci trovare la distanza tra MacArthur Park e Jersey City utilizzando Google Maps.

Per calcolare la distanza in Excel utilizzando Google Maps, abbiamo bisogno di un file API chiave. API sta per Interfaccia di programmazione dell'applicazione Excel si collega a Google Maps utilizzando la chiave API per raccogliere i dati richiesti. Alcune mappe forniscono chiavi API gratuite, come Bing Maps, ma Google Maps non fornisce API gratuite. Anche se si gestisce un'API gratuita, in qualche modo non funzionerà perfettamente. Quindi, è necessario acquistare la chiave API. API da questo link.

Qui, ho gestito un'area libera API Il tasto non funziona correttamente, ma è solo un esempio. Useremo VBA per creare un funzione definita dall'utente denominato Calcolo della distanza a trovare la distanza Avrà tre argomenti. Luogo di partenza , Destinazione , e Chiave API Ora iniziamo le procedure.

Passi:

  • Stampa ALT + F11 per aprire il Finestra VBA .

  • Quindi, fare clic come segue: Inserire> Modulo per creare un nuovo modulo.

  • Successivamente, digitare i seguenti codici nella finestra.
 Public Function Calculate_Distance(start As String, dest As String, Alink As String) As Double Dim first_Value As String, second_Value As String, last_Value As String Dim mitHTTP As Object first_Value = "//maps.googleapis.com/maps/api/distancematrix/json?origins=" second_Value = "&destinations=" last_Value = "&mode=car&language=pl&sensor=false&key=" & Alink Set mitHTTP =CreateObject("MSXML2.ServerXMLHTTP") Url = first_Value & Replace(start, " ", "+") & second_Value & Replace(dest, " ", "+") & last_Value mitHTTP.Open "GET", Url, False mitHTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" mitHTTP.Send ("") If InStr(mitHTTP.ResponseText, """distance"" : {") = 0 Then GoTo ErrorHandl Set mit_reg =CreateObject("VBScript.RegExp"): mit_reg.Pattern = """valore"".*?([0-9]+)": mit_reg.Global = False Set mit_matches = mit_reg.Execute(mitHTTP.ResponseText) tmp_Value = Replace(mit_matches(0).Submit_matches(0), ".", Application.International(xlListSeparator)) Calculate_Distance = CDbl(tmp_Value) Exit Function ErrorHandl: Calculate_Distance = -1 End Function 
  • Allora niente, tornate al vostro foglio.

Ripartizione del codice:

  • Per prima cosa, ho utilizzato una procedura di funzione pubblica Calcolo della distanza .
  • Poi ha dichiarato alcune variabili primo_valore, secondo_valore e ultimo_valore per gli argomenti della nostra funzione definita dall'utente.
  • Impostare i valori delle variabili (ogni valore è autodescrittivo) e impostare il parametro mitHTTP oggetto in ServerXMLHTTP per utilizzare il GET (utilizzato in seguito, questa proprietà dell'oggetto consentirà di utilizzare il metodo POSTA anche il metodo).
  • Url è la combinazione di tutti i valori impostati in precedenza, la proprietà open del file mitHTTP oggetto utilizzato.
  • Dopo aver assegnato i valori, la funzione di libreria esegue il resto del calcolo.

Ora la nostra funzione è pronta per essere utilizzata.

  • In Cellula C8 , digitare la seguente formula
=Calcolo della distanza(C4,C5,C6)

  • Infine, è sufficiente premere il tasto ENTRARE per ottenere la distanza. La distanza viene visualizzata nel campo Unità di misura .

Per saperne di più: Come calcolare la distanza in auto tra due indirizzi in Excel

Pro e contro del calcolo della distanza con Google Maps

  • È necessario essere in possesso di un documento valido Chiave API .
  • Il codice sopra riportato fornirà l'output nel campo Unità di misura .
  • La funzione definita dall'utente utilizza direttamente i nomi dei luoghi, senza bisogno di utilizzare le coordinate.
  • Assicuratevi di aver utilizzato un luogo valido.

Vantaggi e svantaggi del calcolo della distanza con Google Maps

Vantaggi

  • Per un paio di posti numerosi, è abbastanza fattibile perché si può utilizzare il metodo Maniglia di riempimento per copiare la formula. Questo non è possibile in Google Maps
  • È un modo piuttosto veloce.
  • Non è necessario utilizzare le coordinate.

Svantaggi

  • Non può funzionare con le coordinate.
  • Non si ottiene la mappa o il percorso, ma solo la distanza.
  • Non funzionerà con la corrispondenza approssimativa dei nomi dei luoghi.

Conclusione

Spero che le procedure descritte sopra siano abbastanza valide per calcolare la distanza in Excel con Google Maps. Sentitevi liberi di fare qualsiasi domanda nella sezione dei commenti e per favore datemi un feedback. Visita ExcelWIKI per saperne di più.

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.