【发布时间】:2020-04-29 10:04:36
【问题描述】:
我正在尝试编写在 BI 列中查找术语“drek”的 vba 代码。如果该术语存在于单元格中,它将偏移 (0,1) 值“1”。
我使用了下面的代码,但是它只会找到并偏移第一个“drek”然后停止。我需要它,所以它会用它找到的每一个“drek”来做到这一点。
我该怎么做?
Sub find_drek()
Dim rng As Range
Dim cl As Range
Dim sFind As String
sFind = "drek"
Set rng = Range("BI2", Range("BI65536").End(xlUp))
Set cl = rng.find(sFind, LookIn:=xlValues)
If Not cl Is Nothing Then cl.Offset(0, 1).Value = "1"
End Sub
【问题讨论】:
-
我认为您需要将
for each cell in rng放在Set rng行之后,将Set cl and if not行更改为if cell.value=sFind then cell.offset(0,1).value="1"然后将Next放在End Sub 之前