繁体   English   中英

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

[英]Excel VBA button (copy cells to a new row in another sheet)

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

分解:

单击按钮时:-单元格“ 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

结束子

但是它不能正常工作,而且我还没有弄清A + 1。

有什么帮助吗?

谢谢

首先,如果没有必要,则应避免使用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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM