我正在使用Excel 2007.我有9列:
我创建了一个分配给按钮的宏,该按钮复制您所在的行(最后一行)并将其向下插入1行并清除B列到E的内容。
我正在寻找一种方法在复制期间将列F F parent重置为3个选项的Not_Started :( Not_Started,Layout,Routing)。
以下是当前的宏。
Sub Copy_1_Line()
Application.EnableEvents = False
Rows(ActiveCell.Row).Select
Selection.Copy
Rows(ActiveCell.Row + 1).Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
ActiveCell.ClearContents
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
ActiveCell.ClearContents
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
ActiveCell.ClearContents
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
ActiveCell.ClearContents
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
Application.EnableEvents = True
Application.CutCopyMode = False
End Sub
答案 0 :(得分:1)
选择会降低您的代码速度,删除它们会加快代码速度并使其更易于维护。
如果我理解正确,您需要活动细胞系,列F显示未开始。如果您希望新行具有该行,请更改行
Cells(ActiveCell.Row, "F") = "Not_Started"
到
Cells(ActiveCell.Row+1, "F") = "Not_Started"
这是我的建议:
Sub Copy_1_Line()
Application.EnableEvents = False
Rows(ActiveCell.Row).Copy Rows(ActiveCell.Row + 1)
Cells(ActiveCell.Row + 1, 2).Resize(1, 4).ClearContents
Cells(ActiveCell.Row, "F") = "Not_Started"
Application.EnableEvents = True
Application.CutCopyMode = False
End Sub