我有一张桌子,上面有几个项目。这些项目都有一个代码,它们会一行一行地重复。我的意思是挑出一个表中项目的最后一次'重复',我需要有地址或行参考,我可以使用的东西,所以我可以稍后将它带到一个新的表,我将每月我们项目当前状态的概述,见第一个表格。 而我几乎得到了它,以下代码:
'codTeste is a integer in this example
codTeste = Range("AE:AE").Find(what:="REST0300", after:=Range("AE1"), searchdirection:=xlPrevious).Row
是否有效,但不是这样的:
codTeste = Range(tblDesc.DataBodyRange.Address).Find(what:="REST0300", after:=Range(TheFirstCellOfTheRelevantColumnDataBodyRange), searchdirection:=xlPrevious).Row
'If I do this it'll throw me a mismatch error
重点是使其更具动态性,以便不将find方法限制为非常特定的范围参数......
答案 0 :(得分:0)
这对我有用:
Dim trng As Range, f As Range, inCol As Long
Set trng = ActiveSheet.ListObjects("Table1").DataBodyRange
useCol = 2
Set f = trng.Columns(inCol).Find(what:="77", LookIn:=xlValues, lookat:=xlWhole, _
searchdirection:=xlPrevious, after:=trng.Columns(inCol).Cells(1))
If Not f Is Nothing Then Debug.Print f.Row
答案 1 :(得分:0)
将inCol调整为整数
inCol =工作表(" Sheet1")。Cells.Find(What:=" Product Code",After:= Worksheets(" Sheet1")。 (" A1"),LookIn:= xlValues,LookAt:= xlWhole,SearchOrder:= xlByRows,SearchDirection:= xlPrevious).Column
我无法发表评论,但这会找到名称为@steps
的列号