可以理解为salary 在不为空、有数值或者不超出范围的时候可以在Do中循环,直到salary 为空、没有数值或者超出范围后停止循环。
(ptName) If Not pt Is Nothing Then pt.TableRange2.Clear ' 清除数据透视表内容 ws.PivotTables(ptName).Delete ' 删除数据透视表 End If On Error GoTo 0 ' 创建数据透视缓存 Set pc = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=dataRange) ' 创建数据透视表 Set pt = pc...
if rg is nothing 表示刚才赋值为空,即find找不到 那么if not rg is nothing就是找得到了。
Find方法如果没查到单元格,则rng对象就为Nothing,也就是空的对象,这种情况下我们使用针对rng的方法、属性如rng.Select、rng.value就会报错:所以为了避免查不到数据而产生的报错,我们一般需要使用一个If语句来判断rng是否为Nothing:If Not rng Is Nothing ThenRng.SelectElseMsgBox “没找到!”End If 这里的判别...
这里的判别式Not rng Is Nothing,断句是Not (rng Is Nothing),意思是判断rng是否不为空。 为了方便例子,本文后续的代码会默认能找到单元格。 FindNext方法 一张工作表里可能有多个同样的数据,我们如果想接着上一个找到的单元格去找下一个单元格,就可以使用FindNext: ...
在VBA中,对于对象引用使用Not并不常见,只有在特定情况下才会使用。例如,我们可以使用Not来检查对象引用是否为空。例如: Dim obj As Object If Not obj Is Nothing Then MsgBox "对象引用不为空" Else MsgBox "对象引用为空" End If 在上述代码中,如果对象引用obj不为空,则使用Not将条件取反后得到的结果为Fals...
目标列 = 3 且 目标行 > =3 时, 目标单元格偏移1列的值=目标值*2 第3种,重点推荐, 使用 Intersect 方法确定区域 Union: 合并多个区域 ☆☆☆ 重要写法:Not Intersect(Target, Union(r1, r2)) Is Nothing 当 目标单元格 与 判断单元格 的重叠区域为 非空 时:即重叠时 执行操作...
Sub test() Dim i,j as integerFor i=1 to 10000 For j=1 to 256 If cells(i,j) = "2012年度考核" cells(i+1,j+1) = 2013 cells(i+1,j+2) = 8 cells(i+1,j+3) = 8 cells(i+2,j+1) = 2014 cells(i+2,j+2) = 4 cells(i+2,j+3) = ...
Set rg = [f:f].Find(Range("c" & i) & "车管") If Not rg Is Nothing Then d = Replace(d, "车管", ***.offset(0, -1).Value) End If if not rg is nothing 和 set rg 这二句我不知道是什么意思,有人可以解释下吗?最好通俗点,因为我是新手,谢谢了。
错误值无法给m赋值,所以弹出错误 先加一个判断,判断是否包含,包含,再找位置 For j = 4 To i If Not [z4].Find(what:=Cells(j, 4)) Is Nothing Then m = Application.WorksheetFunction.Find(Cells(j, 4), [z4])End If 建议用instr,毕竟instr是VBA函数,别用find这个工作表函数 ...