我想根据年龄自动删除某些行

我正在创build一个电子表格,并希望在某个年龄段自动放置行。 有没有办法做到这一点? 我公司向纽约办事处提交工程申请,并创build了一份工作追踪器,以监控从提交到收到计划的时间。 如果我能想出如何在一段时间后使数据行丢失,我的老板会喜欢它。 我已经得到了所有的公式,并添加新的工作自动更新,但我不知道如何去做这个任务。 感谢您的任何意见!

像下面的代码应该做的伎俩。 在这个例子中,我从第二行开始,检查F列中的date,看看是否大于定义的时间间隔days(21这里),你可以根据需要改变这些variables的初始化:

Sub delete_old() Dim rowDate Dim curDate Dim interval Dim curAdd Dim vCell As Range ' set interval to an appropriate no of days interval = 21 ' can be more precise eg for 5 mins: (1 / 24) / 12 curDate = Now() ' assuming we want to start from row 2 and that date is in column F Set vCell = Range("F2") ' Set Do loop to stop when an empty cell is reached. Do Until IsEmpty(vCell) curAdd = vCell.Address If curDate - vCell.Value >= interval Then vCell.EntireRow.Delete Set vCell = Range(curAdd) Else Set vCell = Range(curAdd).Offset(1, 0) ' next row End If Loop Set vCell = Nothing End Sub 

您将需要在保存或打开工作簿等事件时自动调用此function。 让我知道如果你需要帮助设置这个或上面的代码澄清。