Excel有很多对象,Range是其中一个常用对象,此对象预定义了大量的方法,可能用来调用,实现不同的功能。
其中ColumnDifferences是一个比较有用的功能,编程过程中,如果合理应用还是节省不少时间的。
下面介绍一下ColumnDifferences的使用方法。
ColumnDifferences方法
功能:
返回一个 Range 对象,该对象表示每列中所有与比较单元格内容不同的单元格。
也不是说这个方法将返回一个Range对象,返回这个对象包括了每列中所有单元格比较之后不同的单元格。
再直白一点,就是单元格值进行比较,最后返回所有不相同的单元格。
格式:
表达式.ColumnDifferences(比较单元格)
Set r = ActiveSheet.Columns("B").ColumnDifferences(ActiveSheet.Range("B20"))
上面这个例子就是,将B列每一个单元格和B20进行比较,返回比较结果不相同的单元格,赋给r对象,如此rRange对象包含了与B20不相同值的所有B列单元格。
注意一点,就是并不是所有B列单元格,而是表内UsersedRange单元格,也就是说表内最大行以内的单元格。
找出不是【衣锦还乡】
找出不是【红袖添香】
上图分别对“红袖添香”和“衣锦还乡”进行比较,然后设置一个不同背景以示区分找出不同。
这样在用到筛选功能的时候就可以方便地找出不同项,然后进行操作了。
代码
Private Sub CommandButton3_Click()
Dim r As Range
Set r = ActiveSheet.Columns("B").ColumnDifferences(ActiveSheet.Range("b24"))
r.Select
With Selection
.Interior.Color = RGB(252, 152, 131)
.Borders.LineStyle = 1
.BorderAround LineStyle:=1, Weight:=xlHairline, ColorIndex:=21
End With
Me.OLEObjects("Label1").Object.Caption = "找出所有不是【衣锦还乡】"
End Sub
关于Range有很多值得学习的方法和属性,有必要多加学习,如此就可以更加熟练地掌握和学习Excel vba 编程方面的一些内容。
在编程过程中会得到事半功倍的效果。
如果喜欢这篇文章,欢迎关注、收藏