Excel VBAでの逆ジオコーティングのやり方について
解決したいこと
画像のプロパティにある
撮影日時・経度・緯度・高度(高度はなくてもOK)
を取得して、その高度緯度から住所を知りたいです。
ExcelのVBAで行っています。
このソースで、画像から撮影日時・緯度・経度までは
とることができています。(すこし緯度と経度の計算がおかしいですが)
Sub sample()
Dim photFile As String
Dim objWia As Object
Dim p As Object
Dim makerName As String
Dim ModelName As String
Dim dateOfShooting As String
Dim latitude As String
Dim longitude As String
Dim altitude As String
'対象の写真(画像ファイル)を指定
photFile = "C:\Users\デスクトップ\Photos\IMG_0405.jpg"
Range("A2").Value = photFile
Set objWia = CreateObject("Wia.ImageFile")
'写真(画像ファイル)をロード
objWia.LoadFile photFile
For Each p In objWia.Properties
Select Case p.Name
'撮影日時
Case "ExifDTOrig"
dateOfShooting = p.Value
Range("B2").Value = dateOfShooting
'緯度
Case "GpsLatitude"
latitude = p.Value(1) + (p.Value(2) / 60) + p.Value(3) / 3600
Range("C2").Value = latitude
'経度
Case "GpsLongitude"
longitude = p.Value(1) + (p.Value(2) / 60) + p.Value(3) / 3600
Range("d2").Value = longitude
'高度
Case "Gpsaltitude"
longitude = p.Value(1) + (p.Value(2) / 60) + p.Value(3) / 3600
Range("d2").Value = longitude
End Select
Next
'イミディエイトウィンドウへ出力
Debug.Print "撮影日時 :" & dateOfShooting
Debug.Print "緯度 :" & latitude
Debug.Print "経度 :" & longitude
Debug.Print "高度 :" & altitude
'後片付け
Set objWia = Nothing
End Sub
このあとは、出てきた緯度・経度・高度(高度はなぜか出てこないです)を使って
住所に変換したいのですが、
APIというのがよくわかりません。
国土地理院のAPIがよいと書いてあるのですが、サービスが終了しているのかどこから利用したらよいのかわからず。
このあとどう進めていったらやりたいことができるのか、わからず困っています。こんなほぼ理解できていない質問で申し訳ないです。どうかご助力頂けませんでしょうか。
0