VBA查找具有两个variables的行,然后时间戳一列

任何人都可以给我build议如何在电子表格中查找匹配两个条件的行,然后更改特定单元格中的数据。

数据会是这样的..

Reference Version date1 date2 date3 ABC1 1 11/12/2013 ABC1 2 31/12/2013 ABC2 1 12/12/2013 ABC3 1 12/12/2013 ABC1 3 01/01/2014 

在VBA中,我希望能够find与引用和版本号匹配的行,然后find该唯一行的datestamp列4。

任何帮助将非常感激。

非常感谢

试试这个代码:

 Sub test() Dim refToFind As String Dim versToFind As String refToFind = "ABC1" versToFind = "1" 'address of first reference Set Rng = Sheet1.Range("B2") lastrow = Sheet1.Range("B" & Sheet1.Rows.Count).End(xlUp).Row - Rng.Row For i = 0 To lastrow If CStr(Rng.Offset(i, 0).Value) = refToFind _ And CStr(Rng.Offset(i, 1).Value) = versToFind Then Rng.Offset(i, 4) = Now End If Next i End Sub 

求解两个准则的位置可以通过这个数组公式来解决(在这个示例中,查找ABC31A2:B6 在这里输入图像说明

这个公式可以在VBA中用来提供时间戳的位置:

VBA等效

 Sub OneWay() Dim lngRow As Long lngRow = Evaluate("=MATCH(1,(A2:A6=""ABC3"")*(B2:B6=1),0)") Cells(lngRow + 1, 4) = Now() End Sub 

要不就:

 Sub OneWay2() lngRow = Cells(Evaluate("=MATCH(1,(A2:A6=""ABC3"")*(B2:B6=1),0)")+ 1, 4) = Now() End Sub