我在活动电子表格中有以下数据:
A B
--- ---
a a
b
c
d
e
其中B1
是当前活动的单元格。
“调试”窗格中的以下代码:
Dim rng As Range
Set rng = ActiveSheet.Range("A1:A5").RowDifferences(ActiveCell)
失败,出现以下错误:
运行时错误'1004':无法获取Range类的RowDifference属性
RowDifferences
属性的正确用法是什么?
更新
当对上述数据使用ColumnDifferences
时,我得到了相同的错误。
Set rng = ActiveSheet.Columns("A").ColumnDifferences(ActiveCell)
即使我转置了数据:
A B C D E
--- --- --- --- ---
a b c d e
a
并将A2
设置为活动单元格,我得到了相同的错误:
Set rng = ActiveSheet.Rows(1).RowDifferences(ActiveCell)
发布于 2018-07-17 07:36:47
ColumnDifferences
,因为Range("A1:A5")
在本例中是一个列。RowDifferences
或ColumnDifferences
,则比较单元格必须位于您要比较的D10中,例如使用D11而不是D11为了进一步演示,我在B1:B5
中添加了其他值。使用A1
作为比较单元,下面是RowDifferences
和ColumnDifferences
的结果(Select
在结果中)。
行差异
Sub TestRowDiff()
Dim rng As Range
With Sheets("Sheet2")
Set rng = .Range("A1:B5").RowDifferences(.Range("A1"))
End With
rng.Select
End Sub
此处选择了B1:B5
-B1:B5
检查第1- 5行,逐行比较列A和列B中的单元格。字母"f“与"a”不同,"g“与"b”不同,以此类推。
列差异
Sub TestColDiff()
Dim rng As Range
With Sheets("Sheet2")
Set rng = .Range("A1:B5").ColumnDifferences(.Range("A1"))
End With
rng.Select
End Sub
这里选择A2:B5
是因为"b“到"e”不同于"a",并且"g“到"j”不同于"f“。
发布于 2018-07-17 07:03:10
正如@BigBen在评论中所说,你可能会在这里寻找ColumnDifferences
。
Here是用于RowDifferences
的MSDN文档。
这是为ColumnDifferences
准备的
你应该会得到类似这样的结果:
Set rng = ActiveSheet.Columns("A").ColumnDifferences(ActiveCell)
https://stackoverflow.com/questions/51370935
复制相似问题