A到K列中的条目直到一个特定的数字可能有所不同。 L到Q列的条目直到150,000。我想删除A列中最后一个条目之后的所有条目(此数字是可变的)
录制宏后得到的代码如下。
代码的问题在于它是硬编码 Application.Goto参考:=“ R70086C1”
Sub ExtraDelete()
' ExtraDelete Macro
Range("AN1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-39], ""*"")"
Range("AN1").Select
Selection.Copy
Range("AN3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.ClearContents
Range("AN1").Select
Selection.Copy
Application.Goto Reference:="R70086C1"
Rows("70087:70087").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A70082").Select
ActiveWorkbook.Save
End Sub
答案 0 :(得分:1)
我要删除A列中最后一个条目之后的所有条目。
通常,您将从列A的底部开始,然后查找以找到最后一个填充的单元格。就像从A1048576开始,然后点按ctrl + <向上箭头>。
Range.Select几乎不需要,也很少是最好的方法。 (read this)
Sub ExtraDelete()
' ExtraDelete Macro
with worksheets("sheet1")
.range(.cells(.rows.count, "A").end(xlup).offset(1, 0), _
.cells(.rows.count, "A")).entirerow.clear
.parent.Save
end with
End Sub