创建一个宏,它可以:匹配一个值,然后保存左边的值和值,然后删除电子表格中的其他所有内容

时间:2015-06-22 22:40:35

标签: excel excel-2007

创建一个宏,它可以:匹配一个值,然后保存左边的值和值,同时删除电子表格中的其他所有内容。 问题是值可以改变位置,但要查找的值将保持不变。 我需要创建一个可以匹配值的宏,然后将该值和值保存到左侧,同时删除其他所有内容。它可能包含两个或多个不同的值:

ColumnA ColumnB     树叶     橙色水果     番茄蔬菜     胡萝卜根     洋葱根     苹果水果

然后,如果值为fruit,root应包含:

苹果果实 橙色水果 胡萝卜根 洋葱根 因此,添加了更多的项目,或者如果它们的顺序不同,我仍然可以获得所需的值(水果和根)

1 个答案:

答案 0 :(得分:0)

我认为这就是你想要的。 首先,它要求匹配的类别(默认为水果和根)。 然后它从列表的底部开始,向上移动,删除不匹配的每一行。

Sub DeleteUnwantedItems()
    Values = Split(InputBox("Enter space separated categories:", , "fruit root"), " ")
    Row = Range("B1").End(xlDown).Row
    For I = Row To 1 Step -1
        If UBound(Filter(Values, Cells(I, 2).Value)) = -1 Then Rows(I).Delete
    Next
End Sub