从VBA

时间:2015-08-26 12:38:42

标签: excel forms vba

我有一个公式,通过从上面复制自动填充单元格,以下代码可以完美地用于我需要的单元格引用。

Dim lstRw As Long
Dim Rng As Range
lstRw = Cells(Rows.Count, "A").End(xlUp).Row
Set Rng = Range("A" & lstRw + 1)
Range("A" & lstRw & ":C" & lstRw & ":I" & lstRw & ":N" & lstRw).Copy Range("A" & lstRw + 1)
With Rng

然而..我也希望代码能够复制AW:BK ..

的范围

我尝试了以下内容:

Dim lstRw As Long
Dim Rng As Range
lstRw = Cells(Rows.Count, "A").End(xlUp).Row
Set Rng = Range("A" & lstRw + 1)
Range("A" & lstRw & ":C" & lstRw & ":I" & lstRw & ":N" & lstRw & "AW:BK" & lstRw).Copy Range("A" & lstRw + 1)
With Rng

但我不断收到编译错误!

此致

1 个答案:

答案 0 :(得分:2)

"AW:BK"更改为"AW" & lstRw & ":BK" & lstRw

假设您的最后一行是第10行,要引用第10行的多列,您必须编写AW10:BK10您的代码只需要复制它。

编辑我最初只看了AW:BK部分。如果您尝试选择同一行的A,C,I,N,AW:BK列,则需要用逗号分隔它们而不是冒号

range("A" & LstRw & ",C" & LstRw & ",I" & LstRw & ",N" & LstRw & ",AW" & LstRw & ":BK" & LstRw)