首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有.FIND和Offset()的.FIND函数

带有.FIND和Offset()的.FIND函数
EN

Stack Overflow用户
提问于 2013-09-04 23:11:25
回答 1查看 2.8K关注 0票数 0

我正在写一个代码在Excel中的一个3张表,表1将显示的数据,没有出现在Sheet2从Sheet3,为了完成这一代码将如下所示;

代码语言:javascript
复制
Dim r As Excel.Range
Dim cell As Excel.Range
Set r = Sheet3.Range(Sheet3.Cells(1, 1), Sheet3.Cells(Rows.Count, 1).End(xlUp))
Dim curRowSheet1 As Long

curRowSheet1 = 1

For Each cell In r
    Set rFind = Sheet2.Range("A:A").Find(cell.Value)



    If (rFind Is Nothing) Then
        cell.EntireRow.Copy Sheet1.Cells(curRowSheet1, 1)
        curRowSheet1 = curRowSheet1 + 1
    End If
Next cell

注意:我正在尝试在第9行"SET rFind“下包含第二个偏移量,如果在其中查找列(”A: are“)中的单元格的值,然后还验证来自表2和表3的列("B:B")的值是否相同,我想我可以使用.FIND ()函数来比较此数据,任何关于此的建议都将不胜感激!

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-09-05 00:08:34

我建议使用WorksheetFunction.CountIfs而不是Range.Find

代码语言:javascript
复制
Sub tgr()

    Dim ACell As Range

    For Each ACell In Sheet3.Range("A1", Sheet3.Cells(Rows.Count, "A").End(xlUp)).Cells
        If WorksheetFunction.CountIfs(Sheet2.Columns("A"), ACell.Value, Sheet2.Columns("B"), ACell.Offset(, 1).Value) = 0 Then
            ACell.EntireRow.Copy Sheet1.Cells(Rows.Count, "A").End(xlUp).Offset(1)
        End If
    Next ACell

End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18617540

复制
相关文章

相似问题

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