데이터베이스에 포인트를 추가하는 엑셀 워크 시트에 대한 매크로를 작성하고 있습니다. 항목은 위도와 경도 값과 관련하여 고유해야하므로 사용자가 항목을 입력하려고 시도한 후 항목의 위도/경도를 확인할 수있는 몇 줄의 코드를 추가했습니다. 보류중인 항목의 위도/경도를 데이터베이스의 모든 항목과 비교하여 검사합니다. 일치하는 경우 오류를 반환합니다. 여기서 코드 :엑셀 데이터베이스가있는 VBA 카운터
x = 2
Do Until (Worksheets("DBase").Cells(x, 3).Value = "")
If Worksheets("DBase").Cells(x, 3).Value = lat And Worksheets("DBase").Cells(x,
4).Value = lon Then
GoTo coorAbort
Else
x = x + 1
End If
Loop
X는 행 카운터, 위도 및 경도가 인/위도 오랫동안있어 사용자에 의해 입력하고, coorAbort 오류 메시지와 단면도이다. 루프를 다음 행으로 진행하기위한 카운터를 제외한 모든 것이 제대로 작동하지 않습니다. 두 번째 행 항목을 확인한 다음 루프를 종료하고 코드의 다음 부분으로 이동합니다. 나는 작은 무언가를 엉망으로 만들 것이라고 확신한다. 나는 그것을 꺼내는 것처럼 보이지 않는다. 누구든지 아이디어가 있습니까?
디버거로 코드를 실행 해 보셨습니까? –
예. 현재 나는 단지 두 개의 데이터베이스 항목으로 테스트하고 있습니다. 첫 번째 항목과 동일한 위도/경도를 사용하여 세 번째 항목을 추가하려고하면 coorAbort 오류 메시지가 표시됩니다. 그러나 두 번째 항목과 동일한 위도/경도를 가진 세 번째를 추가하려고하면 카운터가 실제로 작동하고 (디버거를 통해 단계별로 실행) if 문에서 비교를 수행하지만 어떤 이유로 인해 서로 같지 않고 루프를 계속 진행합니다. – Brendan