我以前从未使用过excel宏,只是编写了一个宏,它将完成的任务移动到输入完成日期后10天的文档底部(即如果它已于4月14日结束,这是输入完成列的日期,然后整行被移动到文档的底部。)
以下是我练习的表格。
Current_Date Id Samp1 Samp2 Samp3 Samp4 Samp5 Samp6 Completed_Date Completed_Plus_10 Real_C+10 Post
5/2/2016 1 a1 ab1 b1 bc1 c1 1 2/18/2016 2/28/2016 2/28/2016 Y
5/2/2016 2 a2 ab2 b2 bc2 c2 2 1/10/1900 N
5/2/2016 3 a3 ab3 b3 bc3 c3 3 1/10/1900 N
5/2/2016 4 a4 ab4 b4 bc4 c4 4 4/21/2016 5/1/2016 5/1/2016 Y
5/2/2016 5 a5 ab5 b5 bc5 c5 5 1/10/1900 N
5/2/2016 6 a6 ab6 b6 bc6 c6 6 1/10/1900 N
5/2/2016 7 a7 ab7 b7 bc7 c7 7 3/14/2016 3/24/2016 3/24/2016 Y
5/2/2016 8 a8 ab8 b8 bc8 c8 8 1/10/1900 N
5/2/2016 9 a9 ab9 b9 bc9 c9 9 1/10/1900 N
5/2/2016 10 a10 ab10 b10 bc10 c10 10 5/2/2016 5/12/2016 5/12/2016 N
5/2/2016 11 a11 ab11 b11 bc11 c11 11 1/10/1900 N
5/2/2016 12 a12 ab12 b12 bc12 c12 12 1/10/1900 N
5/2/2016 13 a13 ab13 b13 bc13 c13 13 1/10/1900 N
5/2/2016 14 a14 ab14 b14 bc14 c14 14 1/10/1900 N
5/2/2016 15 a15 ab15 b15 bc15 c15 15 1/10/1900 N
5/2/2016 16 a16 ab16 b16 bc16 c16 16 1/10/1900 N
5/2/2016 17 a17 ab17 b17 bc17 c17 17 1/10/1900 N
5/2/2016 18 a18 ab18 b18 bc18 c18 18 1/10/1900 N
5/2/2016 19 a19 ab19 b19 bc19 c19 19 1/10/1900 N
5/2/2016 20 a20 ab20 b20 bc20 c20 20 1/10/1900 N
答案 0 :(得分:0)
这是一个小宏,因此您不必在空白页面上开始: 我的表格如下:
Date id samp1 samp2 Complete date
05.02.2016 2 abc abc asd
10.02.2016 4 ghi ghi 01.02.2016
07.02.2016 3 def def asd
11.05.2016 5 jkl jkl 06.05.2016
我使用宏录制器并将第二行复制到表的末尾。然后我用“Find& Select”> “去特别”>选择“空白”> “输入”。然后我删除了它们(在这里找到:http://www.exceltrick.com/how_to/delete-blank-rows-in-excel/)。 在录制的宏中,我添加了变量LastRow(使其动态化)
Sub mv()
'
' mv Makro
'
' Tastenkombination: Strg+Umschalt+A
'
Dim LastRow As Long
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
'here you sould add a loop over the rows and an the if statement
Range("A3:E3").Select
Selection.Cut
Range("A" & LastRow + 1).Select
ActiveSheet.Paste
'and here the end of the if statement and the loop
Range("A1").Select
Application.CommandBars("Selection and Visibility").Visible = False
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.EntireRow.delete
End Sub
宏基本上做了什么:
您可以使用此宏并将其调整为您的问题。循环遍历行,如果日期(从column1)减去日期(从column5)大于10,则复制,否则不执行任何操作。
我希望这会有所帮助