我正在写一些宏的Excel工作表,将添加点到数据库。这些条目的经纬度值必须是唯一的,所以我添加了几行代码,用于在用户尝试输入条目后检查条目的纬度/经度。它旨在检查数据库中所有数据的未决条目的纬度/经度。如果它匹配,它将返回一个错误。下面是代码:与excel数据库的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是行计数器,LAT和经度是纬度/经度真实由用户输入,并coorAbort是与错误信息的部分。一切工作正常,除了计数器进展到下一行循环似乎没有工作。它检查第二行条目,然后退出循环并转到代码的下一部分。我确信我有一些小事情搞砸了,我似乎无法挑选出来。有人有主意吗?
您是否尝试用调试器逐步调试代码? –
是的。目前我只用两个数据库条目测试它。当我尝试添加与第一个条目相同的纬度/长度的第三条时,它会按照它的要求转到coorAbort错误消息。但是,如果我尝试添加与第二个条目相同的经纬度的第三条,计数器实际上可以工作(从调试器一步一步开始),并且在if语句中进行比较,但有些原因发现它们不相等,并继续循环。 – Brendan