首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法获取Range类的RowDifferences属性

无法获取Range类的RowDifferences属性
EN

Stack Overflow用户
提问于 2018-07-17 06:36:02
回答 2查看 350关注 0票数 0

我在活动电子表格中有以下数据:

代码语言:javascript
复制
A    B
---  ---
a    a
b
c
d
e

其中B1是当前活动的单元格。

“调试”窗格中的以下代码:

代码语言:javascript
复制
Dim rng As Range
Set rng = ActiveSheet.Range("A1:A5").RowDifferences(ActiveCell)

失败,出现以下错误:

运行时错误'1004':无法获取Range类的RowDifference属性

RowDifferences 属性的正确用法是什么?

更新

当对上述数据使用ColumnDifferences时,我得到了相同的错误。

代码语言:javascript
复制
Set rng = ActiveSheet.Columns("A").ColumnDifferences(ActiveCell)

即使我转置了数据:

代码语言:javascript
复制
A   B   C   D   E
--- --- --- --- ---
a   b   c   d   e
a

并将A2设置为活动单元格,我得到了相同的错误:

代码语言:javascript
复制
Set rng = ActiveSheet.Rows(1).RowDifferences(ActiveCell)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-17 07:36:47

  1. 使用ColumnDifferences,因为Range("A1:A5")在本例中是一个列。
  2. 如果您使用的是RowDifferencesColumnDifferences,则比较单元格必须位于您要比较的D10中,例如使用D11而不是D11

为了进一步演示,我在B1:B5中添加了其他值。使用A1作为比较单元,下面是RowDifferencesColumnDifferences的结果(Select在结果中)。

行差异

代码语言:javascript
复制
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”不同,以此类推。

列差异

代码语言:javascript
复制
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“。

票数 2
EN

Stack Overflow用户

发布于 2018-07-17 07:03:10

正如@BigBen在评论中所说,你可能会在这里寻找ColumnDifferences

Here是用于RowDifferences的MSDN文档。

这是为ColumnDifferences准备的

你应该会得到类似这样的结果:

代码语言:javascript
复制
Set rng = ActiveSheet.Columns("A").ColumnDifferences(ActiveCell)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51370935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档