[[20101002133331]] 『住所を入力すると緯度経度が自動で表示』(エクセル勉強中;;) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『住所を入力すると緯度経度が自動で表示』(エクセル勉強中;;)
あるセルに住所を入力したら、違うセルに緯度と経度を表示させることは
可能でしょうか??出来ればマクロではなく、関数でやりたいと思いますので
よろしくお願いいたします。

 住所とその場所の緯度経度のデータがあれば可能かと思いますが、そのデータを与えないと
 エクセルだけでは関数だろうがマクロだろうが無理でしょう。

 (とおりすがり)

え〜そうなのですか??住所だけでは緯度経度って出せないんですか?
(エクセル勉強中;;)

 エクセルは表計算ソフトです。
 当然、計算式を書くのはユーザー自身が行うことになります。

 他サイトですが、参考です。

 2地点間の自動車での移動距離を計算したい。
http://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=139002&rev=0

 (シスボーベー)

 参考までに

 住所から緯度、経度を求める(for Java Ver1.1)フリー版
http://www.iko-yo.com/n/cnv_add2pos/convert_address2pos_java.html

 (すずめ)

 ユーザー定義関数ですが・・・
 GooGleマップなんかで住所検索するとソース内に緯度経度があるので
 それを取得というコードです。
 ほかに方法はあると思いますがデータベース作るのは面倒なので簡単に。

 多少時間はかかります。

 標準モジュールに

    Function zahyo(myAddress As String) As String
    Const myUrl As String = "http://maps.google.co.jp/maps?f=q&source=s_q&hl=ja&geocode=&q="
    Dim buf As String
    With CreateObject("InternetExplorer.Application")  
      .Navigate myUrl & myAddress
      Do While .Busy = True
        DoEvents
      Loop
      Do While .document.readyState <> "complete"
        DoEvents
      Loop
      buf = .document.body.innerHTML
      .Quit
    End With
    zahyo = "緯度:" & Join(Split(Split(Split(buf, "ll=")(1), "&")(0), ","), " 経度:")
    End Function

 と書いて
 A1に住所
 B1にでも =zahyo(A1)
 としてみてください。

 IE7とかだとうまくいかないかもしれません。
 IE6 winXP xl2003 でのテストではOKです。

 ほかの環境は無いのでアフターフォローはできません。

 (momo)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.