
EXCEL2010でGOOGLEMAPルート表示
皆さまこんにちは
以前、Excelにてhyperlinkにてgooglemap表示について質問したものです。
そのときの条件は、プラウザとしてインターネットエキスプローラー8を使用。 (会社のオンラインがエキスプローラー8を使用のため)
GOOGLEマップが開かない、また文字化けするという質問でした。
その後、インターネット上にて検索条件を広げ(エクセルVBAの使用)てみたところ、下記のようなVISUAL BASICを見つけ、参考にして見ました。。
しばらく使用しましたが、ルートの検索にて出発地を毎回入力しなくてはなりません。
そこで質問で指定したセルに出発地を入力しておけば自動的にルート表示ができるようにしたいのです。
なにか知恵をお借りできればと思います。
よろしくお願いいたします。
下記の条件 セルB3にお客様名、セルC3に郵便番号、セルD3に住所
住所をダブルクリックするとGOOGLEMAPが開くという式です。
Option Explicit
' 住所が入力されているセルの範囲を定義します ex) C3 以下に住所がある場合
Private Const ADDRESS_DATA = "D3:D65536"
' Google Map 問い合わせ URL
Private Const GOOGLEMAP_QUERYSTR = "http://maps.google.co.jp/maps?f=q&hl=ja&q="
' Google Map 初期表示倍率(整数で1~)
Private Const GOOGLEMAP_ZOOM = 16
' シート上のダブルクリック操作で発生するイベントプロシージャ
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Me.Range(ADDRESS_DATA)) Is Nothing Then
' ダブルクリックでセル編集モードにしない
Cancel = True
'Google Map をブラウザで表示
Call ShowGoogleMap(Target.Value)
End If
End Sub
' 引数で渡した住所付近の地図を Google Map で表示する
Private Sub ShowGoogleMap(ByVal strAddress As String)
Dim strURL As String
If strAddress = "" Then Exit Sub
strURL = UrlEncode(StrConv(strAddress, vbWide))
strURL = GOOGLEMAP_QUERYSTR & strURL & "&z=" & CStr(GOOGLEMAP_ZOOM)
CreateObject("WScript.Shell").Run strURL
End Sub
' 文字列を URL エンコードして返す(JScript の encodeURI 関数を利用)
Private Function UrlEncode(ByVal strText As String) As String
If strText = "" Then Exit Function
With CreateObject("ScriptControl")
.Language = "JScript"
With .CodeObject
UrlEncode = .encodeURI(strText)
End With
End With
End Function
No.2ベストアンサー
- 回答日時:
ANo1です
超手抜きでやるなら、こんなのでも一応動作するみたいですが、きちんと処理しておくのに越したことはありません。(ANo1の後半の手抜き版)
Sub test()
Dim departure As String, destination As String
Const url = "https://www.google.co.jp/maps/dir/"
departure = "松本城"
destination = "諏訪大社"
CreateObject("WScript.Shell").Run url & departure & "/" & destination
End Sub
※ const文の最後のクォーテーションが変換されちゃうみたいですが、「"」です。
No.1
- 回答日時:
こんにちは
>なにか知恵をお借りできればと思います。
よく理解できていませんので、何かの参考にでもなれば…
>セルに出発地を入力しておけば自動的にルート表示ができるようにしたいのです。
ルート検索であれば目的地もあると思うのですが、目的地は固定なのでしょうか?
(目的地に関して、ご質問文には何も記載がないので…)
いずれにしろ、ルート検索をしてもらうことになるのでしょうから、ちゃんとやるならVBAから入力操作を行うのが間違いないと思います。
エクセルVBAからのIE操作に関しては、検索するといろいろ解説サイトが見つかると思います。
例えば以下とか
http://www.vba-ie.net/ie/index.html
一方で、ちょっと試してみたところ、
https://www.google.co.jp/maps/dir/出発地/目的地
としてアクセスすると、同様の結果が得られるようです。
(試してみただけですので、正しい利用方法かどうかは不明です。)
確証はありませんが、もしもこれでも良いとすれば、ご提示のコードがほぼそのまま利用できるものと思います。(URLの内容を変えるだけで済むので)
こんにちは
Excelも随分奥が深いですね。
教えて頂いたサイトで少し勉強して
みます。
もし、良い案有りましたらアップ
していただけると嬉しいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
you are an idiot!のアクセス方...
-
ルート50の解き方
-
滋賀の大津の瀬田~姫路まで下...
-
Googleドライブをクイックアク...
-
交通費について
-
しまなみ海道途中でUターン
-
天国への行き方教えてください...
-
日本で販売されたGALAXYはカス...
-
千葉県の東金駅を出発し、日曜...
-
【Chapter1】インターネットを...
-
鎌倉の佐助稲荷神社の本殿の横...
-
日本の地名や地理に詳しくなる...
-
高速道路羽田線工事の迂回ルー...
-
2DINナビゲーションオーデ...
-
建築基準法施行令69条関係
-
この問題でルートの中を完全方...
-
住んでいる住所の郵便番号を暗...
-
NaviConというナビアプリについて
-
来週彼女と大阪から箱根まで、...
-
定期券がある区間って降りなく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Googleドライブをクイックアク...
-
ルート50の解き方
-
関西(大阪)から尾瀬に電車、...
-
横浜駅から200KmのJR駅は
-
you are an idiot!のアクセス方...
-
通勤経路をわざわざ遠いところ...
-
自分の家(地域)の郵便物配達...
-
ノートパソコンにHDDアクセスラ...
-
google mapでのルート検索を良...
-
昼休みに来る人ってどういう神...
-
√96の解き方
-
ワードで式を書く時に、ルート...
-
SDカードに取り込んだ音楽の...
-
エクセルでルートの上の棒を長...
-
パソコンのアプリ版のGoogleド...
-
同一フォルダ内で、エクセルを...
-
Cドライブ直下に、ファイル等を...
-
googlemapで最寄駅を調べる方法
-
パソコンでの『ルート(√)2』...
-
正四面体のイオン半径比
おすすめ情報
早速のご教示ありがとうございます。
使い方の提示が足りなかったようです。
目的地として、現在2043件登録しています。
今後、さらに増えると思います。
出発地としては二箇所想定しています。
Excelについては、勉強不足で中々理解に苦しんでます。
素人の私にもわかるよう、教えてください。
宜しくお願い致します。