이 기사를 따라 주소의 위도 및 경도 좌표를 얻을 수있는 고유 한 지리적 도구를 구축하십시오. 이와 같은 변환기는 일반적으로 부동산 중개인이 사용합니다.
다운로드
원하는 경우tar가능한 한 빨리 소프트웨어를 사용하려면 다음을 수행 할 수 있습니다.
그렇지 않고 DIY를 원한다면 아래 내용을 읽을 수 있습니다.
GUI를 준비합시다
필요한 것은 단일 Excel 시트이며 필요에 따라 시트 이름을 지정할 수 있습니다. 이 예에서는 기본 시트 이름 "Sheet1"을 사용합니다. 다음 단계는이 시트에 필요한 헤더를 추가하는 것입니다. 위도, 경도 변환기는 입력에 suburb, state, p가 포함 된 경우 전달하는 주소에 대해 정확한 결과를 제공합니다.ost코드 및 국가. 이미지와 같이 헤더를 준비하십시오. 위도 및 경도를 마지막 두 열로 추가하겠습니다. 사용자가 변환을 수행 할 수있는 버튼도 필요합니다. 이제 Shape를 삽입하고 색상으로 채워서 버튼처럼 보이도록하겠습니다.
기능적으로 만들자
여기에 제공된 스크립트를 새 모듈에 복사해야합니다. 통합 문서를 매크로 사용 통합 문서 파일로 저장하는 것을 잊지 마십시오. Sub "FindThis"는 방금 만든 버튼에 첨부되어야합니다.
테스트 해보자
다른 정보와 함께 주소를 각 열에 추가합니다. 버튼을 클릭하여 시트에 나열된 모든 주소에 대한 위도 및 경도 좌표를 표시하는 매크로를 실행합니다. 매크로는tart는 행 2에 있으며 빈 행에 도달 할 때까지 계속 실행됩니다.
어떤 서비스인가요?
스크립트를 사용하여 두 가지 기능을 만들었습니다. 하나는 Lat 값을 가져 오기위한 것이고 다른 하나는 Long 값을 가져 오기위한 것입니다. FOR 루프를 사용하여 각 주소를 이러한 함수에 전달하고 결과를 화면에 표시합니다.
스크립트
Function GETLAT(v_address As String, v_suburb As String, v_state As String, v_postcode As Long)
Dim URl As String, lastRow As Long
Dim xmlHttp As Object, html As Object, objResultDiv As Object, objH3 As Object, link As Object
URl = "https://maps.googleapis.com/maps/api/geocode/xml?address=" & Application.WorksheetFunction.Substitute(v_address, " ", "+") & Application.WorksheetFunction.Substitute(v_suburb, " ", "+") & Application.WorksheetFunction.Substitute(v_state, " ", "+") & Application.WorksheetFunction.Substitute(v_postcode, " ", "+") & ",Australia"
Set xmlHttp = CreateObject("MSXML2.XMLHTTP")
xmlHttp.Open "GET", URl, False
xmlHttp.setRequestHeader "Content-Type", "text/xml"
xmlHttp.send
Set html = CreateObject("htmlfile")
html.body.innerhtml = xmlHttp.ResponseText
v_string = html.body.innerhtml
x = InStr(1, v_string, "<LAT>")
If x <> 0 Then
y = InStr(x + 5, v_string, "</LAT>")
GETLAT = Mid(v_string, x + 5, y - (x + 5))
End If
End Function
Function GETLNG(v_address As String, v_suburb As String, v_state As String, v_postcode As Long)
Dim URl As String, lastRow As Long
Dim xmlHttp As Object, html As Object, objResultDiv As Object, objH3 As Object, link As Object
URl = "https://maps.googleapis.com/maps/api/geocode/xml?address=" & Application.WorksheetFunction.Substitute(v_address, " ", "+") & Application.WorksheetFunction.Substitute(v_suburb, " ", "+") & Application.WorksheetFunction.Substitute(v_state, " ", "+") & Application.WorksheetFunction.Substitute(v_postcode, " ", "+") & ",Australia"
Set xmlHttp = CreateObject("MSXML2.XMLHTTP")
xmlHttp.Open "GET", URl, False
xmlHttp.setRequestHeader "Content-Type", "text/xml"
xmlHttp.send
Set html = CreateObject("htmlfile")
html.body.innerhtml = xmlHttp.ResponseText
v_string = html.body.innerhtml
x = InStr(1, v_string, "<LNG>")
If x <> 0 Then
y = InStr(x + 5, v_string, "</LNG>")
GETLNG = Mid(v_string, x + 5, y - (x + 5))
End If
End Function
Sub FindThis()
For r = 2 To 5
Range("F" & r).Value = GETLAT(Range("A" & r).Value, Range("B" & r).Value, Range("C" & r).Value, Range("D" & r).Value)
Range("G" & r).Value = GETLNG(Range("A" & r).Value, Range("B" & r).Value, Range("C" & r).Value, Range("D" & r).Value)
Next r
End Sub
스크립트를 사용하여 적절한 결과를 얻지 못하는 경우 손상된 Excel이 원인 일 수 있습니다. 그런 다음 사용할 수 있습니다. Excel 파일 복구 도구 등 DataNumen Excel Repair Excel을 수정합니다.
저자 소개 :
Nick Vipond는 데이터 복구 전문가입니다. DataNumen, Inc.는 다음과 같은 데이터 복구 기술 분야의 세계적 리더입니다. 문서 문제 복구 그리고 전망 회복 소프트웨어 제품. 자세한 내용은 WWW.datanumen.COM

