Come calcolare la distanza tra due indirizzi in Excel (3 modi)

  • Condividi Questo
Hugh West

L'articolo vi mostrerà come calcolare il distanza tra due indirizzi in Excel. Microsoft Excel dispone di una funzione speciale e di una formula per trovare la distanza tra due luoghi del mondo. Se si dispone di Coordinate GPS di due posti, si può facilmente determinare la distanza tra questi luoghi in qualsiasi unità desiderata.

Scarica il quaderno di esercizi

Calcolo della distanza tra due indirizzi.xlsm

3 modi per calcolare la distanza tra due indirizzi in Excel

Nel nostro set di dati, abbiamo Latitudine e Longitudine per Ohio e Alaska Misureremo la distanza tra loro.

Il Latitudini per Ohio e Alaska sono 40.4173 Nord e 64,2008 Nord Inoltre, il Longitudini per Ohio e Alaska sono 82.9071 Ovest e 149.4937 Ovest rispettivamente.

1. Uso della formula di Haversine per calcolare la distanza tra due indirizzi

Se si è bravi in matematica, usare Formula Haversine Anche se vi darà un risultato approssimativo, è un risultato piuttosto buono.

Prima di tutto, è necessario conoscere il formula di base della lunghezza dell'arco E utilizzando questa formula, la confrontiamo con la distanza tra due luoghi sulla terra. La formula è riportata di seguito.

S = rθ

S = Distanza tra due indirizzi

r = Raggio della Terra

θ = angolo introdotto al centro della Terra dai due indirizzi

Ma se avete Coordinate GPS di due posti, è necessario determinare dal Formula Haversine Guarda il Formula Haversine mostrato di seguito.

Se si confronta questo dato con il formula della lunghezza dell'arco si otterrà un risultato simile a quello dell'immagine seguente.

Presentiamo i parametri del metodo Formula Haversine .

φ 1 = Latitudine del primo luogo

φ 2 = Latitudine del secondo posto

1 = Longitudine del primo luogo

2 = Latitudine del secondo posto

Ora vi mostrerò come applicare questa formula in Excel passo dopo passo.

Passi:

  • Per prima cosa, creare una cella per memorizzare il valore della distanza e digitare la seguente formula nella cella C8 .

=2*6400*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))

La formula utilizza ASIN , SQRT , SIN e COS funzioni E' piuttosto semplice se si guarda al Formula Haversine Misuriamo la distanza in chilometri , quindi mettiamo il raggio della terra in chilometri che è 6400 km . ASIN si riferisce al seno inverso o il ArcSine Se si confrontano gli angoli dei parametri del Formula Haversine con la nostra formula di Excel, otteniamo,

1 = Latitudine dell'Ohio (C5)

2 = Latitudine dell'Alaska (C6)

1 = Longitudine dell'Ohio (D5)

2 = Latitudine dell'Alaska (D6)

  • Successivamente, premere il tasto ENTRARE per visualizzare la distanza tra Ohio e Alaska in Chilometri .

  • Successivamente, se si desidera misurare la distanza in miglia utilizzare la seguente formula nella cella C8 .

=2*3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))

In questo caso, abbiamo utilizzato la stessa formula di Excel usata per trovare la distanza in miglia Per questo motivo, prendiamo il raggio terrestre in miglia che è 3959 .

In questo modo è possibile calcolare il distanza tra due indirizzi di terra in Excel applicando la funzione Formula Haversine .

Per saperne di più: Come calcolare la distanza tra due coordinate in Excel (2 metodi)

2. Applicazione delle funzioni CONCATENATE e SUBSTITUTE di Excel per calcolare la distanza tra due indirizzi

È possibile creare un Mappa di Google per trovare il distanza tra due indirizzi utilizzando Excel CONCATENATO e SOSTITUTIVO Funzioni Esaminiamo il procedimento qui di seguito.

Passi:

  • Per prima cosa, digitare la seguente formula in C8 .

=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=", SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))

Questa formula creerà un Mappa di Google link di come si può viaggiare da Ohio a Alaska . il CONCATENATO aggiungerà la funzione indirizzi nel link e il SOSTITUTIVO inserirà il nome del file indirizzi .

  • Successivamente, premere il tasto ENTRARE e verrà visualizzato il pulsante Mappa di Google link in C8 .

  • Dopodiché, utilizzare questo link nella barra di ricerca di internet e si otterrà il distanza informazioni su questi due indirizzi .

Infine, è possibile calcolare il valore distanza tra due indirizzi della terra in Excel applicando CONCATENATO e SOSTITUTIVO funzioni.

Per saperne di più: Come calcolare la distanza tra due città in Excel

3. Usare VBA per calcolare la distanza tra due indirizzi in Excel

Un altro modo per calcolare distanza tra due indirizzi potrebbe essere la creazione di un API ( Interfaccia di programmazione dell'applicazione ) e utilizzarlo per creare un collegamento Funzione definita dall'utente da VBA Si può fare un API link in Bing Per creare un'applicazione Mappa Bing Chiave API propria, clicca qui .

Passi:

  • Per prima cosa, andare su Sviluppatore > Visual Basic .

  • Successivamente, selezionare Inserire > Modulo per aprire il Modulo VBA .

  • In seguito, digitate il seguente codice nel file Modulo VBA Stiamo creando un Funzione definita dall'utente per calcolare distanza in miglia .
 Option Explicit Public Function DistanceInMiles(First_Location As String, _ Final_Location As String, Target_Value As String) Dim Initial_Point As String, Ending_Point As String, _ Distance_Unit As String, Setup_HTTP As Object, Output_Url As String Initial_Point = "//dev.virtualearth.net/REST/v1/Routes/DistanceMatrix?origins=" Ending_Point = "&destinations=" Distance_Unit ="&travelMode=driving&o=xml&key=" & Target_Value & "&distanceUnit=mi" Setup_HTTP = CreateObject("MSXML2.ServerXMLHTTP") Output_Url = Initial_Point & First_Location & Ending_Point & Final_Location & Distance_Unit Setup_HTTP.Open "GET", Output_Url, False Setup_HTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"Setup_HTTP.Send ("") DistanceInMiles = Round(Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _ "//TravelDistance"), 3), 0) Fine funzione 

Codice Spiegazione

  • Per prima cosa, abbiamo dato un nome al nostro Funzione come Distanza in miglia Abbiamo anche inserito 3 parametri: First_Location come stringa, Final_Location come stringa e Valore_obiettivo come stringa .
  • Dopo di che, abbiamo dichiarato Punto_iniziale , Punto_Finale , Unità_di_distanza e Url_uscita come Stringa ; Impostazione_HTTP come Oggetto .
  • In seguito, abbiamo impostato Punto_iniziale come l'inizio del Collegamento Url , Punto_Finale come Destinazione e Unità_di_distanza a Miglia .
  • Successivamente, si impostano i parametri necessari per creare una relazione tra il nostro VBA e il codice API
  • Infine, abbiamo stabilito il nostro Funzione definita dall'utente .
  • In seguito, seguendo le stesse procedure, abbiamo fatto un altro Funzione definita dall'utente per trovare la distanza in chilometri .

Si può vedere che abbiamo appena cambiato il parametro Unità_di_distanza a chilometri .

  • Successivamente, nell'immagine che segue, è possibile vedere il API chiave nella cella C8 .

  • Successivamente, digitare la seguente formula nella cella C8 .

=Distanza in miglia(E5,E6,C8)

  • Successivamente, premere il tasto ENTRARE e verrà visualizzato il pulsante distanza tra Ohio e Alaska in miglia .

  • Successivamente, utilizzare la seguente formula per visualizzare il valore di distanza in chilometro .

=DistanzaInKM(E5,E6,C8)

Pertanto, è possibile calcolare il distanza tra due indirizzi utilizzando VBA e API chiave.

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

Cose da ricordare

  • Tenendo presente questo, è necessario mettere circa il corretto Coordinate GPS di questi Stati nei dati perché si sta utilizzando internet per trovare la distanza. Come il Stati sono ovest alla Linea Meridiana , entrambi i loro Longitudini sarà negativo.

Sezione pratica

In questa sezione, vi fornirò il set di dati di questo articolo, in modo che possiate mettere in pratica questi metodi da soli.

Conclusione

È sufficiente dire che imparerete metodi molto efficaci per calcolare distanza tra due indirizzi in Excel dopo aver letto questo articolo. Se avete metodi migliori o domande o feedback su questo articolo, vi prego di condividerli nel box dei commenti. Questo mi aiuterà ad arricchire i miei prossimi articoli. Per ulteriori domande, visitate gentilmente il nostro sito web ExcelWIKI.com .

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.