一个macros,用于在状态更改后将行从一个wksheet移动到同一个工作簿中的另一个wksheet

我有一个工作簿,有两个工作表(一个名为final,一个名为pending),使用相同的列标题和列公式。

我很难搞清楚一个macros/ VBA,这将帮助我自动地将数据从“未决”工作表行到“最后”工作表,一旦第四列的状态从未决到最终变化。 这样就可以将待处理和最终客户的所有数据保存在不同的工作表中。

请帮忙。

在你的woorkbook代码上尝试这样的事情:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Sh.Name = "pending" And Target.Column = 4 Then If Sh.Cells(Target.Row, Target.Column) = "final" Then Sh.Select Sh.Rows(LTrim(Str(Target.Row)) & ":" & LTrim(Str(Target.Row))).Select Selection.Copy ' or cut Sheets("final").Select Rows("20:20").Select ' here is your destination row... you must set a global to control it... Selection.Insert Shift:=xlDown End if End Sub 

祝你好运!