Excelで2都市間の距離を計算する方法

  • これを共有
Hugh West

には、いくつかの用途があります。 エクセル のクールな特殊関数と公式。 マイクロソフトエクセル 地球上の特定の2つの都市や場所の距離を決定することができる。 このようなことができるようにすることが重要である。 距離を計算する 地図上の任意の2つの場所の間の距離を計算することができ、あなたの旅行にかかる時間の適切な見積もりを提供します。 しかし、我々は簡単にそれを行うことができます。 この記事では、Excelで2都市間の距離を計算するいくつかの方法を示しています。

練習用ワークブックをダウンロードする

ワークブックをダウンロードして、一緒に練習することができます。

2都市間の距離を計算する.xlsm

データセット紹介

2つの都市間の距離を計算するために、まずデータセットを用意する。 2つの都市があるとする ロサンゼルス という州の主要都市である。 カリフォルニア そして パスコ という街です。 ワシントン ここで、両者の距離を求めるためには ラチチュード 経度 エクセルで簡単に緯度・経度を求めることができますので、見てみましょう。

STEPS

  • まず、都市名を入力するセルを選択します。 この例では、セル B5 そして B6 .
  • 2つ目は データ タブをクリックします。
  • 第三に データの種類 をクリックします。 ジオグラフィー .

  • そして、緯度を求めるには、緯度を入れたセルを選択し、そこに数式を打ち込みます。
=B5.緯度

  • プレス 入力 をクリックすると、結果が表示されます。

  • 同様に、セルの緯度を求めると B6 .
  • さて、経度、同様に緯度を求めるには、セルを選択し、そのセルに次の数式を入力します。
=B5.Longitude

  • を打つ。 入力 キーボードのキーを押してください。

  • 同様に、以下を得る。 B6 の経度を、先ほどの手順で計算します。
  • これで両都市の緯度・経度が揃ったので、データセットが使えるようになりました。

Excelで2都市間の距離を計算する5つの異なる方法

2つの場所の距離を求めると、2つの住居の間隔を求めることができます。 この情報を使って、住居間の移動にかかる時間を見積もることができます。 2つの都市間の距離を求めるには、先ほど作成した上記のデータセットを使用します。

1.ハバーシンの公式を適用して2都市間の距離を計算する

海洋探査の基礎方程式のひとつである ハバーシン配合 は、球面上の2地点の緯度と経度、および半球の半径が決まれば、その2地点間の距離を計算することができます。 GPS ここでは、その計算式を使って、2つの都市間の距離を計算する手順を説明します。

STEPS

  • まず始めに、距離を取得したいセルを選択するので、セル C8 .
  • そして、その上に ハバーシン配合 を選択したセルに入力します。
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))

  • 最後に 入力 キーを押すと結果が表示されます。

  • そこで、この式を用いて、次のような結果を得ることができます。 1367.581282 .

続きを読む: Excelで2つの住所間の走行距離を計算する方法

2.ExcelのACOS、SIN、COS、RADIANS関数で2都市間の距離を計算する

値の逆コサインとは ACOS機能 は、ラジアン単位の角度の正弦を返します。 エクセルSIN関数 ラジアン単位の角度の余弦を返すには COS機能 ラジアンから度への変換は ExcelのRADIANS関数 これらの関数を組み合わせて、2つの都市間の距離を求めることができます。 また、基本的に自動化されているのは GPS それでは、これらの関数の組み合わせを応用して、2つの都市間の距離を段階的に求めてみましょう。

STEPS

  • まず、距離を取得したいセルを選択します。ここでは、セル C8 .
  • その後、選択したセルに関数の計算式の組み合わせを挿入します。
=acos(cos(radians(90-c5)) *cos(radians(90-c6)) +sin(radians(90-c5)) *sin(radians(90-c6)) *cos(radians(d5-d6))) *6371

  • 結果を表示するには、 を押してください。 入力 のキーを一番最後に押します。

  • したがって、この式に当てはめると、次のような数字になります。 1357.033633 .

続きを読む Excelで2つのGPS座標の間の距離を計算する方法

3.ExcelのCONCATENATE関数とSUBSTITUTE関数を組み合わせて、2つの都市間の距離を取得する

2つまたはそれ以上の単語の並びを1つのフレーズにまとめるには テキスト関数CONCATENATE ... 約 三十 テキストを結合するには、Excel CONCATENATE 関数で、結果をテキストで返します。 SUBSTITUTE関数 のExcelでは,比較を使って指定された文字列のテキストを変更します。 この2つの関数を組み合わせて グーグルマップ のリンクから探すことができます。 アドレス間距離 を使って、2つの都市間の距離を求める公式を、順を追って使ってみましょう。

STEPS

  • 同様に、先ほどの方法で、取得したいセルを選びます。 グーグルマップ この場合、セル C8 .
  • そして、その選択したセルに数式を入力します。

=CONCATENATE("//maps.google.co.jp/maps?f=d&source=s_d&saddr=",

SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+")"))

  • を押すと、結果が表示されます。 入力 キーになります。

この計算式の助けを借りて、リンクすることができます。 グーグルマップ からの経路を示すもの。 ロサンゼルス まで パスコ を使用してリンクに都市が追加されます。 CONCATENATE 関数を用いて,都市名を追加します。 サブスティテュート 関数を使用します。

  • その後、ブラウザの検索ボックスにこのリンクを入力すると、この2つの都市が互いにどのくらい離れているかを調べることができます。

があります。 CONCATENATE サブスティテュート 関数は、地球上の2つの都市間の距離を求めるためにExcelで使用されることもあります。

続きを読む エクセルで2つの住所間のマイルを計算する方法(2つの方法)

4.2都市間の距離を計算するLAMBDA関数の作成

LAMBDA機能 Excelでは、ワークシート全体で利用できるカスタマイズされた関数を構築し、親しみやすい名前でアクセスするために使用します。 一度定義して名前を付けると、ワークブック内のどこでもそれらの関数を使用できるようになります。

距離を表す主な方程式は

D=アコス(sinΦ 1 .罪Φ 2 + cosΦ 1 .コΦ 2 コサイン Δλ) . R

たとえ少々無理をしているように見えても、私たちにとって最も重要なのは入力なのです。

  • 出発地の緯度・経度を指定します。
  • 最終的な位置の緯度・経度。

だから、計算式や方程式の中で

  • Δλ は、経度差( lon_2-lon_1 ).
  • Φ 1 Φ 2 順次表示 lat_1 lat_2 .
  • R は表面の半径を示す。

を作成してみましょう。 ラムダ 関数を使って、以下の手順で2つの都市間の距離を計算することができます。

STEPS

  • まず、セルを選択します。 C8 .
  • さらに、そのセルに数式を入れる。
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1)) * r))(C5,D5,C6,D6).

  • 次に、 を押します。 入力 .

  • これで結果は表示されますが、計算式が大きすぎて、何度も使っているうちにわからなくなるかもしれません。
  • そこで、この代わりに、カスタマイズされた数式を作成するために ラムダ 関数を使用します。
  • これについては 計算式 タブをクリックします。
  • の下 定義された名前 グループをクリックします。 名 称 マネージャー .

  • を表示します。 名 称 マネージャー のダイアログボックスが表示されます。
  • ここで、「」をクリックします。 新規 のメニューがあります。

  • これで 新名称 ウィンドウに表示されます。
  • さらに、2つの都市間の距離を計算したいので、計算式の名前を付けます。 都市間距離 .
  • のフィールドに、次の数式を入力します。 について言及しています。 .

=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r))

  • をクリックします。 よっしゃー .

  • これで ネームマネージャー のダイアログを再度表示します。
  • さらに 閉じる ボタンをクリックすると完了します。

  • これで、新しいカスタム関数 都市間距離 そして、この関数を使うと、2つの都市間の距離を得ることができます。

  • したがって、この式に当てはめると、次のような数字になります。 1358.524645 .

続きを読む: エクセルでレーベンシュタイン距離を計算する方法(4つの簡単な方法)

5.エクセルVBAで2都市間の距離を計算する

を作ること。 エーピーアイ ( アプリケーションプログラミングインタフェース )接続し、それを活用することで ユーザー定義機能 VBAで2つの地点間の距離を求める方法もあります。 地点のデータを集めるために、Excelでは エーピーアイ を含むあらゆるマップに対応します。 グーグルマップ ビングマップ そのため、この手法を使うためには、まず最初に エーピーアイ という、とてもシンプルなものです。 ビングマップ が無料で提供されています。 エーピーアイ この方法を、無償で提供されている Bing Map API キーになります。 こちらをご覧ください を作成することができます。 Bing Map APIキー .

STEPS

  • まず始めに エーピーアイ キーを押して、セル C8 .

  • では、次に デベロッパー タブをクリックします。
  • では、その中から コード カテゴリーをクリックします。 ビジュアルベーシック を開いてください。 Visual Basic エディター を押すか Alt + F11 を開いてください。 Visual Basic エディター .

  • このようなことをする代わりに 右クリック をワークシートに貼り付け、次のページに進みます。 表示コード に移動します。 Visual Basic エディター .

  • に表示されます。 Visual Basic エディター .
  • をクリックします。 モジュール から インサート ドロップダウンメニューバー

  • これにより モジュール をワークブックに追加してください。
  • と、コピー&ペーストしてください。 VBAコード を以下に示します。

VBAのコードです。

 Option Explicit Public Function CityDistance(First_City As String, Second_City 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=km" Setup_HTTP = CreateObject("MSXML2.ServerXMLHTTP") Output_Url = Initial_Point & First_City & Ending_Point & Second_City & 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("") CityDistance = Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _ "//TravelDistance"), 3), 0) End Function 
  • ワークブック全体をマイクロ対応のワークブックとして保存して、コードを保存すると、拡張子が .xlsm .

  • これにより、ユーザー定義関数名 都市間距離 .

VBAコード説明

  • を贈ることから始めました。 機能 名目 都市間距離 . ファーストシティ 文字列として。 セカンドシティ 文字列として、そして 目標値 As Stringも引数として含まれていた。
  • そして、次のように宣言しました。 HTTPを設定する をオブジェクトとし 初期点 , エンディングポイント , 距離単位 そして 出力先URL をストリングスとして使用します。
  • その後 距離単位 まで キロメートル 初期点 の起点になります。 ウル のリンクです。
  • 次に、このような接続を確立するために必要なパラメータを設定します。 VBAコード とのことです。 エーピーアイ .
  • その後、私たちの ユーザー定義機能 .

結論

上記の方法は、以下を支援します。 2都市間の距離を計算する エクセルで ご質問、ご意見、ご感想がありましたら、コメント欄でお知らせください。 また、他の記事もご覧ください。 エクセルウィキ・ドットコム ブログ

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。