如果列包含to-remove-list中的值,则excel删除行

39 excel office-2007 excel-2007

  1. 比方说,我有一个表- 一把手 -超过5000行(比如,列" " - " ^ h "每个).
  2. 在另一张表 - 第二 - 我有一个"删除列表" - 一个包含400个值的列' A ',每个包含字母数字字符串(例如:xxx1234).
  3. 我必须除去从片每整行头号,如果列" Ë "包含来自"去除的列表"(从列"的任何值的片" 编号2).
  4. 通过删除整行,我的意思是删除行并将其向上移动(不要离开空白空间)

我如何实现这一目标?任何帮助将非常感激.

Jam*_* L. 64

鉴于第2页:

ColumnA
-------
apple
orange
Run Code Online (Sandbox Code Playgroud)

您可以标记工作表1中表2中存在值的行:

ColumnA  ColumnB
-------  --------------
pear     =IF(ISERROR(VLOOKUP(A1,Sheet2!A:A,1,FALSE)),"Keep","Delete")
apple    =IF(ISERROR(VLOOKUP(A2,Sheet2!A:A,1,FALSE)),"Keep","Delete")
cherry   =IF(ISERROR(VLOOKUP(A3,Sheet2!A:A,1,FALSE)),"Keep","Delete")
orange   =IF(ISERROR(VLOOKUP(A4,Sheet2!A:A,1,FALSE)),"Keep","Delete")
plum     =IF(ISERROR(VLOOKUP(A5,Sheet2!A:A,1,FALSE)),"Keep","Delete")
Run Code Online (Sandbox Code Playgroud)

结果数据如下所示:

ColumnA  ColumnB
-------  --------------
pear     Keep
apple    Delete
cherry   Keep
orange   Delete
plum     Keep
Run Code Online (Sandbox Code Playgroud)

然后,您可以轻松过滤或排序工作表1并删除标记为"删除"的行.

  • 不确定这是否会对其他人有所帮助,但我不得不把它写成`= IF(ISERROR(VLOOKUP(A1,Sheet2!$ A $ 3:$ A $ 7,1,FALSE)),"保持","删除") ` (8认同)

小智 11

我发现一种更可靠的方法(至少在Excel 2016 for Mac上)是:

假设您的长列表在A列中,并且要从中删除的内容列表在B列中,则将其粘贴到C列的所有行中:

= IF(COUNTIF($ B $ 2:$ B $ 99999,A2)> 0,"删除","保留")

然后只需按列C对列表进行排序,找到您要删除的内容.


小智 6

如果使用大量"删除"值需要很长时间才能手动删除,我会这样做.

  • - 列A中的原始列表 - 在列B中删除列表 - 选择两列,然后选择"条件格式" -
    选择"高亮单元格规则" - >"重复值"
    - 两列中的重复项应该
    高亮显示 - 然后选择A列,然后选择"排序和过滤"--->"自定义排序"
    - 在出现的对话框中,选择中间选项"排序"并选择"单元格颜色" - 然后
    选择下一个选项"排序顺序"并选择"无单元格颜色""在底部"
    - 所有突出显示的单元格应位于列表的顶部. - 通过向下滚动列表选择所有突出显示的单元格,然后单击"删除".