アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルでA列に住所が入力されているリストがあるのですが、
会社からこの住所までのルート検索をワンクリックで出来ないでしょうか?

使用ブラウザはグーグルクロムで
使用サイトはグーグルマップの車でのルート検索が出来れば助かります。

よろしくお願いしますm(_ _)m

A 回答 (1件)

面白そうなのでVBAで作ってみた。

データのあるシートのシートマクロとして使ってください。
会社の住所は,適当に変更してね。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
If Target.Text = "" Then Exit Sub
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Filename = fso.GetSpecialFolder(2) & "googlemaps.html"
With CreateObject("ADODB.Stream")
.Type = 2
.Charset = "UTF-8"
.Open
.WriteText "<!DOCTYPE html>", 1
.WriteText "<html>", 1
.WriteText "<head>", 1
.WriteText "<meta name=""viewport"" content=""width=device-width, initial-scale=1.0, user-scalable=no"" /> <meta http-equiv=""content-type"" content=""text/html; charset=UTF-8"" />", 1
.WriteText "<link href=""http://code.google.com/apis/maps/documentation/j … rel=""stylesheet"" type=""text/css"" />", 1
.WriteText "<title>Google Maps JavaScript API v3</title>", 1
.WriteText "<script type=""text/javascript"" src=""http://maps.google.com/maps/api/js?sensor=false" … 1
.WriteText "<script type=""text/javascript"">", 1
.WriteText "var rendererOptions ={draggable: true,preserveViewport:false};", 1
.WriteText "var directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions);", 1
.WriteText "var directionsService = new google.maps.DirectionsService();", 1
.WriteText "var map;", 1
.WriteText "function initialize()", 1
.WriteText "{", 1
.WriteText " var myOptions = {center: google.maps.LatLng(35.67849, 139.39178), zoom: 10, mapTypeId: google.maps.MapTypeId.ROADMAP};", 1
.WriteText " map = new google.maps.Map(document.getElementById(""map_canvas""), myOptions);", 1
.WriteText " directionsDisplay.setMap(map);", 1
.WriteText " google.maps.event.addListener(directionsDisplay, 'directions_changed', function() {});", 1
.WriteText " var request = {", 1
.WriteText " origin: ""東京都渋谷区恵比寿1-19-15"" ,", 1
.WriteText " destination: """ & Target.Text & """ ,", 1
.WriteText " travelMode: google.maps.DirectionsTravelMode.DRIVING,", 1
.WriteText " unitSystem: google.maps.DirectionsUnitSystem.METRIC,", 1
.WriteText " optimizeWaypoints: true,", 1
.WriteText " avoidHighways: false,", 1
.WriteText " avoidTolls: false", 1
.WriteText " };", 1
.WriteText " directionsService.route(request, function(response, status) { ", 1
.WriteText " if (status == google.maps.DirectionsStatus.OK) {directionsDisplay.setDirections(response);}", 1
.WriteText " });", 1
.WriteText "}", 1
.WriteText "</script>", 1
.WriteText "</head>", 1
.WriteText "<body onload=""initialize()"">", 1
.WriteText "<div id=""map_canvas""></div>", 1
.WriteText "</body>", 1
.WriteText "</html>", 1
.SaveToFile Filename, 2
.Close
End With
Dim WSH
Set WSH = CreateObject("Wscript.Shell")
WSH.Run Filename, 3
End Sub

この回答への補足

ご回答ありがとうございます。
返信遅くなって申し訳ないです。

VBAは少し触った程度で、折角書いていただいたのですが正直読めないです。。


どういう動きでどうやって使うか詳しく説明いただけると助かります。

お手数ですがよろしくお願いします。

補足日時:2012/03/06 12:36
    • good
    • 2
この回答へのお礼

たびたびすみません。
住所のセルをクリックしたら問題なく動きました!

どうもありがとうございましたm(_ _)m

お礼日時:2012/03/06 12:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!