使用按钮将所选行移动到新工作表

时间:2015-03-25 19:05:05

标签: excel vba rows

我每天都有一张包含大量数据的主表。然后,我有九张纸(称为johnpeterjames等。)我遍历每一行(行)并确定哪个工作/行是针对哪个人切割所选行(例如第5行)比进入那个人员表(例如james)而不是选择下一个空闲行并粘贴。然后返回主工作表删除空行(例如第5行)并重复下一个人,直到主工作表为空。

我要做的是在工作表顶部创建按钮以链接到具有该人姓名的宏/ VBA,并在通过主工作表(工作表1相同工作簿)时想要选择一行然后按按钮和所选行将移动到下一个空行中该人员的工作表并删除原始行。

1 个答案:

答案 0 :(得分:1)

为每张纸复印一次&根据需要重命名sht2。将每个副本分配给一个按钮。

Sub move_row()

'Declare variables
    Dim sht1 As Worksheet
    Dim sht2 As Worksheet
    Dim sht3 As Worksheet
    Dim lastRow As Long

'Set variables
    Set sht1 = Sheets("Master")
    Set sht2 = Sheets("John")

'Select Entire Row
    Selection.EntireRow.Select

'Move row to destination sheet & Delete source row
    lastRow = sht2.Range("A" & sht2.Rows.Count).End(xlUp).Row

    With Selection
        .Copy Destination:=sht2.Range("A" & lastRow + 1)
        .EntireRow.Delete
    End With

End Sub