Sub BuildUserCoordinate()
Dim RX: Scale
RX = MinX + ScaleWidth / ScaleHeight * (MaxY - MinY)
Scale (MinX - (RX - MinX) * 0.02, MaxY + (MaxY - MinY) * 0.05)-(RX + (RX - MinX) * 0.08, MinY - (MaxY - MinY) * 0.05)
End Sub
倒数第二条语句提示除数为0。能不能讲讲这个代码是啥意思啊
Dim RX: Scale
RX = MinX + ScaleWidth / ScaleHeight * (MaxY - MinY)
Scale (MinX - (RX - MinX) * 0.02, MaxY + (MaxY - MinY) * 0.05)-(RX + (RX - MinX) * 0.08, MinY - (MaxY - MinY) * 0.05)
End Sub
倒数第二条语句提示除数为0。能不能讲讲这个代码是啥意思啊
这是什么意思啊,:相当于重启以行,那你的代码应该相当于运行了一次scale
有时候会出现这种错误,我也百思不得其解。我的解决方法,不怎么好,但一般可以解决问题,原理望高手们分析。
当然首先要保证代码中的值是正确的。Sub BuildUserCoordinate()
Dim RX, Scale
subHeader:
on error resume next
RX = MinX + ScaleWidth / ScaleHeight * (MaxY - MinY)
Scale (MinX - (RX - MinX) * 0.02, MaxY + (MaxY - MinY) * 0.05)-(RX + (RX - MinX) * 0.08, MinY - (MaxY - MinY) * 0.05)
if err.number<>0 then
DoEvents
goto subHeader
end if
End Sub
变量定义为scale,scale函数功能就会丧失
Scale (1, 1)-(2, 1) 错误
Scale (1, 1)-(1, 2) 错误两坐标(纵坐标和横坐标)间要有距离才是正确的,
任何两个坐标点没有距离都是错误的,因为你是要缩放一个范围。错误时VB提示被0除。