macros读取一个单元格的值,在表中find这个值是否存在,如果存在,则删除表格行并向上移位

忘记密码:

它返回对象variables错误。 我试图logging一个macros,但发现不适合与复制和粘贴,然后,macroslogging实际行我在,而不是一个variables。

我也尝试了“Cells.AutoFilter Field:= 2,Criteria1:= x”,但是会返回Autofilter范围类失败。 我卡住了。 希望能帮助到你。

Sub alta() ' ' alta Macro x = Range("I3").Select Selection.Copy Selection.Find(What:=x, After:=ActiveCell, LookIn:=xlValues, LookAt _ :=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ True, SearchFormat:=False).Activate Application.CutCopyMode = False Selection.EntireRow.Delete Range("I3").Select Selection.ClearContents End Sub 

这应该让你开始:

 Private Sub CommandButton1_Click() If Range("I3").Value <> "" Then If IsError(Application.Match(Range("I3"), Range("B3:B20"), 0)) Then MsgBox ("No Match") Else foundRow = Application.Match(Range("I3"), Range("B3:B20"), 0) + 2 Range("A" & foundRow & ":B" & foundRow).Delete Shift:=xlUp End If End If End Sub