-2

我认为这不是一项太难的任务,但问题是我实际上对编程一无所知,我需要在我目前的工作中这样做。这是我的问题:

问题是我必须开发一个宏,并将其分配给一个按钮,该按钮从第 1 页(sheet1)复制范围 E3:K14 并将其粘贴到第 2 页(sheet2)的 A1 上。这第一个任务相当简单,但是当我再次点击按钮分配的宏时,问题就来了,如果有,那么它必须将其复制到单元格 I1 上,如果我再次单击按钮到 Q1 等等。

粘贴范围时,必须使用“Paste Vales”选项进行粘贴。

如果有人可以把确切的代码(如果可能的话,加上一些评论)给我,让我粘贴它会非常有帮助。

任何帮助将非常感激!

4

2 回答 2

1

试试下面的代码:

Sub sample()
    With Sheets("Sheet2")
        Sheets("sheet1").Range("E3:K14").Copy .Cells(.Range("A" & .Rows.End(xlUp).Row) + 1, 1)
    End With
End Sub

在此处输入图像描述

解释 :

  • 已使用范围复制方法并提供了粘贴的目的地。
  • .Range("A" & .Rows.End(xlUp).Row) + 1检查 sheet2 A 列中最后使用的单元格并添加 1,以便将数据粘贴到最后使用的行上。(假设 E 列没有空白单元格)
于 2013-05-29T17:29:36.077 回答
0

伙计,您可以使用此代码获取最后一列的数据,这是解决您问题的关键。

Sub SelectLast()
  Dim LastColumn As Long
  With ActiveSheet
    LastColumn = .Range("A1").SpecialCells(xlCellTypeLastCell).Column
  End With
  MsgBox LastColumn

  Cells(18, LastColumn + 2).Select
End Sub
于 2013-05-30T14:23:37.313 回答