小编Pre*_*ite的帖子

更快速地计算两个位置之间的距离(邮政编码)

我正在编写一个VBA脚本,用于查找指定半径内的ZIP代码.我有一个Access数据库,在表中有多个记录.每个记录在表上都有一个名称,地址和邮政编码字段.上访问VBA代码提示输入邮政编码和搜索半径用户然后计算用户输入的邮政编码,每个记录的邮政编码之间的距离.计算每个距离后,只要记录落在半径输入字段内,记录就会显示在表格中.

我编写的代码有效但执行时间太长(2000年记录大约30秒).如何减少运行此VBA代码所需的时间?这是我写的代码:

Private Sub Command65_Click()
Dim StartTime As Double
Dim SecondsElapsed As Double
Dim i, j As Integer
Dim db As Database
Dim rs As Recordset
Dim ZIP, r As Double
Dim arr(33144, 3) As Double
Dim lat1, long1, lat2, long2, theta As Double
Dim Distance As Integer
Dim deg2rad, rad2deg As Double
Const PI As Double = 3.14159265359
'Dim Variables

StartTime = Timer
deg2rad = PI / 180
rad2deg = 180 / PI

r = Text1.Value
ZIP = Text2.Value …
Run Code Online (Sandbox Code Playgroud)

performance ms-access vba access-vba

2
推荐指数
1
解决办法
278
查看次数

标签 统计

access-vba ×1

ms-access ×1

performance ×1

vba ×1