因此,我一直在使用来自不同论坛的各种代码来组装宏,使我的工作更容易,但我遇到了一个障碍。我使用以下代码来自动填充和选择需要复制和粘贴到其他地方的动态范围:
Dim lastRow As Long
lastRow = Range("A" & Rows.Count).End(xlUp).Row
Range("AP2").AutoFill Destination:=Range("AP2:AP" & lastRow)
Range("AQ2").AutoFill Destination:=Range("AQ2:AQ" & lastRow)
Range("AR2").AutoFill Destination:=Range("AR2:AR" & lastRow)
Range("AS2").AutoFill Destination:=Range("AS2:AS" & lastRow)
Range("AT2").AutoFill Destination:=Range("AT2:AT" & lastRow)
Range("AU2").AutoFill Destination:=Range("AU2:AU" & lastRow)
Range("AP2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select我面临的问题是,我相信,在最后一行(虽然我肯定有人会告诉我,有一个更容易的方式来解决3-8行)。在此变量范围返回单个行的实例中,Selection.End(xlDown)从第2行抓取所有行到底部,这意味着它太大,无法粘贴到目标。我怎样才能修改这一点来解释单行呢?
如果这有帮助的话,那么Selection.End(xlToRight)的列数总是相同的。
发布于 2017-11-17 10:25:56
如果您只想从第二行到最后一行选择范围AP:AU,只需:
Range(Range("AP2"), Range("AU" & Cells.Rows.Count).End(xlUp)).Select顺便说一下。我怀疑你接下来要做的事情是Selection.Copy。不要这样做,只需将.Select替换为.Copy即可。
Range(Range("AP2"), Range("AU" & Cells.Rows.Count).End(xlUp)).Copyhttps://stackoverflow.com/questions/47347961
复制相似问题