[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『グーグルマップへのハイパーリンクが変』(シジマ)
いつもお世話になっています。
教えてください。
シートの D1 E1 F1に住所を打ち込んで
グーグルマップへリンクするよう
「=HYPERLINK("http://www.google.co.jp/maphp?hl=ja&tab=wl&q="& CONCATENATE(D1,E1,F1),"Google Maps")」
を入力していましたが 今日は リンク先が 変(所定の住所ではなく日本地図)。
確か4か月ぐらい前にも変(文字化け?)でしたので ネットで調べて
上記に変更したのですが また グーグル側で変更があったのでしょうか?
今回 ネットで検索しても わかりませんでした。
何か ご存知の方が おいでになれば 教えてください。
< 使用 Excel:Excel2010、使用 OS:unknown >
皆さんが再現できるように実行時のセルの D1,E1,F1 の値を開示されてはいかがですか?
(β) 2015/05/30(土) 19:26
URLENCODEとはユーザー定義関数だろか? であればそのソースあるいは入手法を書いてあげてくれ。
なお、2013であればENCODEURL関数が追加されていてそれが使えると思う。 (ねむねむ) 2015/06/06(土) 10:12
Option Explicit
'日本語をURLエンコードする関数
Function UrlEncode(mySource As Variant) As String
'変数の宣言 Dim objSC As Object 'ScriptControlオブジェクトを格納するための変数
'ScriptControlオブジェクトのインスタンスを生成 Set objSC = CreateObject("ScriptControl")
'ScriptControlオブジェクトの言語をJScriptに設定 objSC.Language = "JScript"
'関数の戻り値として、引数mySourceをURLエンコードした値をセット UrlEncode = objSC.CodeObject.encodeURIComponent(mySource)
'ScriptControlオブジェクトを破棄 Set objSC = Nothing
End Function
以上
さんぱちさん 2015/06/06(土)
=HYPERLINK("https://www.google.co.jp/maps/place/"& CONCATENATE(D1,E1,F1),"Google Maps")
このURLで、符号化せずとも入力文字列を正常に受け取れますが、何か問題がありますか?
(ichinose) 2015/06/07(日) 09:44
関係ないですが、google map繋がりでリンクしておきます。
https://www.excel.studio-kazu.jp/kw/20150420151851.html
(カリーニン) 2015/06/07(日) 09:52
さんぱちさん 2015/06/07(日)09:55
βさん D1E1F1は それぞれ都道府県・市町村・所番地が 入るようにしています。
さんぱちさんさん(ですか?)・ねむねむさんエンコード化の関数ありがとうございます。
ichinoseさん URLでしたか ありがとうございます。
カリーニンさん リンク拝見いたしました。
で 関数を作成し 使ってみました。無事リンク致しました。
が 特定の住所のみ同様の結果が 見られました。
F1の所番地が「###-##」であるような住所(チャンとリンクする住所もある)
でした。「-##」を省けば 取りあえず リンクするようなので特定の住所では
そこを 省くようまた 新しいグーグルでは エンコードとして判断するとの
ことなので URLも取り込んで 作成したのが 下記です。
Function リンク先(住所_1 As String, 住所_2 As String, 住所_3 As String) As String
Dim 削除OK As Boolean
Dim 文字数 As Long
Dim 住所 As String, エンコード As String
Const グーグルマップURL As String = "https://www.google.co.jp/maps"
Const パラメータ As String = "?f=g&hl=ja&q="
Const ○○ As String = "*○○市○○区○○町###-##"
Const ×× As String = "*××市××町###-##"
Const △△ As String = "*△△市△△町###-#"
住所 = Replace(Replace(住所_1 & 住所_2 & 住所_3, " ", ""), " ", "")
住所 = WorksheetFunction.Clean(住所)
文字数 = Len(住所)
エンコード = ""
If 文字数 > 0 Then 削除OK = False Select Case True Case (住所 Like ○○): 削除OK = True Case (住所 Like ××): 削除OK = True Case (住所 Like △△): 削除OK = True End Select If 削除OK Then 文字数 = InStr(住所, "-") - 1 住所 = Left(住所, 文字数) End If With CreateObject("ScriptControl") .Language = "JScript" エンコード = .CodeObject.encodeURIComponent(住所) End With End If リンク先 = グーグルマップURL & パラメータ & エンコード End Function
(シジマ) 2015/06/19(金) 16:52
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.