无法让VBA相信数字格式

时间:2017-04-04 20:51:21

标签: vba excel-vba excel

我无法通过以下方式达成一致意见:

Dim IMSPosition As Double
 IMSPosition = Application.WorksheetFunction.IfError(Application.VLookup(UniqueID, IMSData.Range("A:P"), 14, 0), 0)

If Abs(HubPosition * Multiplier + IMSPosition) < 1 Then

目标是查看IMS位置和轮毂位置是否具有相等且相反的量,然后将它们翻转为朝向相同方向。

如果没有Dim IMS,没有格式,我会在比较行上出现类型不匹配。使用DIM和格式中的任何一个或两者,我在IMS位置线上出现溢出错误。我尝试了各种格式,我尝试将源数据更改为数字,我已经完成了一些谷歌搜索,而且我完全卡住了。

编辑:打破并单步执行代码,前7行发布正常,然后就可以了。我调查了有问题的数字,它很生气,而且......没什么特别的。另一个...

等等,它是巨人。大于长数。我想我发现了我的问题......

编辑2:正常工作,除非Vlookup找不到任何内容。需要弄清楚如何告诉它表现得像之前的行为(当它是一个字符串时)

编辑3:尝试将Vlookup包装成iferror并不像我希望的那样游泳

编辑4:我设法使用以下代码:

 IsinHUB = Not IsError(Application.Match(UniqueID, HubData.Range("C:C"), 0))
    isInIMS = Not IsError(Application.Match(UniqueID, IMSData.Range("A:A"), 0))
   If IsinHUB And isInIMS Then
 ' Compare here
End if

0 个答案:

没有答案