Excel 具有特定临界点的非精确匹配vlookup

Excel 具有特定临界点的非精确匹配vlookup,excel,vlookup,Excel,Vlookup,我必须查看数据列(时间A和时间B),我想了解A中的每个数据A是否有一个值B符合B-A=+/−0.007. 我试图使用vlookup,但无法指定b-a=+/−0.007. 我可以使用vlookup或excel中的其他方法来完成此操作吗?非常感谢您的帮助 数据示例如下所示 +----------------+------------------+ | Time A | Time B | +----------------+------------------+ |

我必须查看数据列(时间A和时间B),我想了解A中的每个数据A是否有一个值B符合B-A=+/−0.007. 我试图使用vlookup,但无法指定b-a=+/−0.007. 我可以使用vlookup或excel中的其他方法来完成此操作吗?非常感谢您的帮助

数据示例如下所示

+----------------+------------------+
| Time A         | Time B           |
+----------------+------------------+
| 0.000          | 0.000            |
| 1.001          | 1.001            |
| 1.852          | 1.852            |
| 2.725          | 2.729            |
| 3.356          | 3.359            |
| 4.061          | 4.070            |
| 4.423          | 4.431            |
| 4.634          | 4.642            |
| 4.750          | 4.637            |
| 5.390          | 5.398            |
| 5.788          | 5.788            |
| 6.515          | 6.522            |
| 7.010          | 7.010            |
| 7.672          | 7.500            |
| 8.017          | 7.900            |
| 8.073          | 8.200            |
+----------------+------------------+

您可以使用此VBA解决方案:

Sub main()
Dim i As Integer
Dim j As Integer

For i = 2 To 16
    For j = 2 To 16
        If Abs(Cells(j, 2) - Cells(i, 1)) < 0.007 Then
            Cells(i, 3) = j
        End If

    Next j
Next i

End Sub
Sub-main()
作为整数的Dim i
作为整数的Dim j
对于i=2到16
对于j=2到16
如果Abs(单元(j,2)-单元(i,1))<0.007,则
单元(i,3)=j
如果结束
下一个j
接下来我
端接头
它在C列中从B列输出匹配的行索引:


谢谢您的回复。但是B中的值可以与A中的任何值匹配。例如,B4中的值可能与A3或A5中的值一致,而不完全是A4。那么在这种情况下,我建议使用VBA解决方案。您能建议我使用什么函数吗?我只知道一点点关于VBA…np,很高兴我能帮上忙;)