目次
エクセルには様々な用途があります。 そして、使いながら ブイビーエー となると、Excelでやりたいことは何でもできそうです。 ですから、当然ながら 距離を計る 今回は、Googleマップを使ったエクセルでの距離計算を、シャープな手順とわかりやすい図解でご紹介します。
練習用ワークブックをダウンロードする
ここから無料のExcelワークブックをダウンロードし、ご自身で練習してください。
Google Mapを使った距離計算.xlsmユーザー定義関数を使ってExcelでGoogle Mapsと距離を計算する
ここで、私たちは 距離を測る マッカーサーパークとジャージーシティの間をグーグルマップで表示。
まず、重要なことがあります。 Google Mapsを使ってExcelで距離を計算するためには、以下のように エーピーアイ キーになります。 エーピーアイ を意味します。 アプリケーションプログラミングインタフェース ExcelはAPIキーを使ってGoogle Mapsと接続し、必要なデータを収集します。 Bing Mapsのように無料のAPIキーを提供しているマップもありますが、Google Mapsは無料のAPIを提供していません。 無料のAPIを何とか管理しても、完全には機能しません。 そこで、APIキーを購入しなければならないのです。 エーピーアイ キーはこのリンクから。
ここでは、無料で管理しています。 エーピーアイ キーは、正しく動作しませんが、例として使用します。 ブイビーエー を作成します。 ユーザ定義関数 名前付き 距離の計算 まで 距離を測る 3つの引数を持ちます。 出発地 , 目的地 そして APIキー それでは、手続きを開始します。
ステップス
- プレス ALT + F11 を開いてください。 VBAウィンドウ .
- 次に、以下のようにクリックします。 挿入モジュール をクリックすると、新しいモジュールが作成されます。
- その後、ウィンドウに次のコードを入力します。
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 = "//maps/max_var"、 "//api/value(option=max)・distortion="・double"・local"・false"・false"・milk"・false"・false"・false=falSECreateObject("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 = 0.0CreateObject("VBScript.RegExp"): mit_reg.Pattern = """value"".*?([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(xListSeparator) Calculate_Distance = CDbl(tmp_Value) 終了関数 エラーハンドル : 計算距離 = -1 End 関数名
- それなら何もせず、元のシートに戻ればいい。
コードのブレークダウン
- まず、Public Functionのプロシージャを使いました 距離の計算 .
- そして、いくつかの変数を宣言します。 first_Value、second_Value、last_Value。 をユーザー定義関数の引数に指定します。
- 変数に値を設定し(各値は自己申告)、その変数に ミットハットティーピー である。 サーバーXMLHTTP を活用することです。 ゲット メソッド(後で使う、このオブジェクトプロパティで ポスト メソッドも同様に)。
- ウル は、先に設定したすべての値の組み合わせで、openプロパティの ミットハットティーピー オブジェクトが使用されました。
- 値を代入した後は、ライブラリ関数が残りの計算を行います。
これで、この関数は使えるようになりましたね。
- で セルC8 と入力すると、次のような式が得られます。
=Calculate_Distance(C4,C5,C6)
- 最後に エンタメ ボタンを押すと、距離が表示されます。 メーターユニット .
続きを読む Excelで2つの住所間の走行距離を計算する方法
Google Mapsで距離を計算するメリットとデメリット
- が必要です。 APIキー .
- 上記のコードでは、出力が メーターユニット .
- ユーザー定義関数では、地名を直接使用するため、座標を使用する必要はありません。
- 有効な場所を使用したことを確認してください。
Googleマップで距離計算をするメリット・デメリット
メリット
- 大きな数カ所であれば、「◎」を使うことができるので、かなり実現性が高いです。 フィルハンドル ツールで数式をコピーすることはできません。 グーグルマップ
- かなり早い方法です。
- 座標を使う必要がない。
デメリット
- 座標と連動することはできない
- 地図やルートは表示されませんが、距離だけは表示されます。
- 地名のおおよその一致ではうまくいきません。
結論
上記の手順で、Google Mapsを使ったExcelでの距離計算がうまくいくことを願っています。 何か質問がありましたら、コメント欄でお気軽にご意見をお寄せください。 Visit エクセルウィキ をクリックすると、さらに詳しくご覧になれます。