excel vba 删除符合条件的行

excel里有两个表,表a和表b,如果表b里第1列的某行某个单元格的值,和表a里第2列的某个单元格的值相同,那么删除表b里这一行,求代码!非常感谢各位大大的帮助!... excel里有两个表,表a和表b,如果表b里第1列的某行某个单元格的值,和表a里第2列的某个单元格的值相同,那么删除表b里这一行,求代码!
非常感谢各位大大的帮助!
展开
 我来答
阚桂花过淑
2019-06-22 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:647万
展开全部
rows("x:n").clearcontents
这句有两处不对:
一是对象引用,x和n是你要删除的行号,引号内的xn就成了字符,无法用对应的数字替换,应为
rows(x
&":"&
n)
第二是方法错误:clearcontents
方法只是清除内容,并不删除行,应改为delete方法
这句应改为:rows(x
&":"&
n).delete
coolbi5
2015-05-01 · TA获得超过1万个赞
知道大有可为答主
回答量:1.1万
采纳率:35%
帮助的人:2431万
展开全部
Option Explicit
Sub Sdel()
    Dim a As Worksheet, b As Worksheet
    Dim la As Integer, lb As Integer
    Dim i As Integer
    Set a = Sheets("a") '这里设置表a的名字
    Set b = Sheets("b") '这里设置表b的名字
    la = a.[b60000].End(xlUp).Row
    lb = b.[b60000].End(xlUp).Row
    For i = lb To 1 Step -1
        If Application.CountIf(a.Range("b1:b" & la), b.Range("b" & i)) Then b.Range("b" & i).EntireRow.Delete
    Next i
End Sub
更多追问追答
追问
您好,非常感谢您的回复。
你的代码很棒,可以实现我要的功能,而且代码简练。
现在有个新情况,如果只是部分字符相同的话,比如只有某几个字符相同而不是完全相同的情况下,如何修改这个代码呢?
期待您的回答!
追答
没太明白你的意思,举个例子吧
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Ynzsvt
2015-05-01 · TA获得超过6662个赞
知道大有可为答主
回答量:1.5万
采纳率:40%
帮助的人:2667万
展开全部
在辅助列用COuntif函数,不需要删除的就是0,排序一下,大于零的一块删除。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skyzxh

2015-05-01 · 知道合伙人软件行家
skyzxh
知道合伙人软件行家
采纳数:2623 获赞数:8343
毕业于中科院,硕士,30年工程从业经验。现任公司技术负责。

向TA提问 私信TA
展开全部
用字典法应该容易
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式