对象_全局失败的VBA方法范围 – 循环

我有一个非常简单的方法,范围的问题。

我知道当我在工作表上工作时,我必须指定工作表,但是我不知道如何很好地完成工作:'(谁能解释一下工作原理?

显然这个问题发生在这里!

Range(Selection, Range(Selection).End(xlToLeft).End(xlToRight)).Delete shift:=xlUp 

提前谢谢你! 我没有任何问题的其他部分的代码。

提前谢谢了! 🙂

 Sub NarrowingDowning() Dim LoopCounter, i, j As Long LoopCounter = Range("B3", Range("b3").End(xlDown)).Cells.Count For j = 2 To 4 '**** this section below is sorting out data: NO ERRORS here ****' Worksheets(j).Sort.SortFields.Clear Worksheets(j).Sort.SortFields.Add Key:=Range("G8") _ , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets(j).Sort .SetRange Range("A3", Range("A3").End(xlToRight).End(xlDown)) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With ActiveSheet.Range("G3").Select For i = 1 To LoopCounter ActiveSheet.Range("g3").Offset(i, 0).Select If Selection.Value > 0.85 Then Selection.Select ElseIf Selection.Value < 0.85 Then Selection.Offset(0, 1).Select Range(Selection, Range(Selection).End(xlToLeft).End(xlToRight)).Delete shift:=xlUp End If If Selection.Value = "" Then Exit For Next i Next j End Sub 




我需要说清楚。 对不起大家。 我有一张桌子,A2:H300,旁边还有其他两张桌子,不应该受到影响。 当某个条件满足时(即G(i).value <0.85),那么我只想删除这个特定范围内的行。 例如,如果G(6).value为0.2,满足条件,那么在A6:H6 范围内的第6行将被删除,不会影响其他表:)

对不起,让你们所有人困惑。

如何只是:

 Selection.EntireRow.Delete shift:=xlup 

编辑:

既然你不想删除整个行,你可以捕捉到像这样的东西在他们的立即范围:

 Range(Selection.End(xlToLeft), Selection.End(xlToRight)).Delete shift:=xlUp