Excel VBA按钮(将单元格复制到另一个工作表中的新行)

时间:2017-06-22 10:34:11

标签: excel vba copy-paste

我需要从表单上的表单中复制一些单元格,然后将它们粘贴到工作表活动的新行中。

打破它:

单击按钮时:   - 细胞" B2,B3,B4,B5,B6,A10,A16,A21,A24,E10,E17,E20,E23,E26,I10,I12,I14,I16,M10,M12,M14,M16 ,M19,M22"将在活动表格(表格)上选择并复制。   - 复制的单元格粘贴在另一个工作表(活动)上并粘贴到新行(类似A + 1)

这是我到目前为止所做的:

Private Sub CommandButton1_Click()
Sheets("Form").Select
Range("B2,B3,B4,B5,B6,A10,A16,A21,A24,E10,E17,E20,E23,E26,I10,I12,I14,I16,M10,M12,M14,M16,M19,M22").Select
Selection.Copy
Sheets("Activities").Select
If Sheets("Activities").Range("A9") = "" Then
    Sheets("Activities").Range("A9").PasteSpecial Paste:=xlPasteValues
Else
    Sheets("Activities").Range("A10").Select
    Selection.End(xlUp).Select
    ActiveCell.Offset(1, 0).Select
    Selection.PasteSpecial Paste:=xlPasteValues
End If

End Sub

但是它没有正常工作,我还没有设法找出A + 1.但

任何帮助?

由于

1 个答案:

答案 0 :(得分:0)

首先,如果没有必要,你应该避免Select陈述(它不必要地引发事件等)。

我的方法是:

Dim rng As Range
Set rng = Sheets("Novo Pedido").Range("B2,B3,B4,B5,B6,A10,A16,A21,A24,E10,E17,E20,E23,E26,I10,I12,I14,I16,M10,M12,M14,M16,M19,M22")

For Each cell In rng
    'here you copy to another sheet, one row lower
    Sheets("Geral").Cells(cell.Row + 1, cell.Column).Value = cell.Value
Next cell