我试图将C列中的所有单元格设置为上个月的最后一天。由于是六月,因此在这种情况下,我希望C列中的所有单元格都是5月31日。此外,我在D列中有数据,如果D列中有数据,我只想在2019年5月31日在C列中进行填充。
我似乎无法将C列与D列“铰链”在一起,因此我将下面的那部分代码遗漏了。
Sub LastDayofPriorMonth()
ActiveCell.FormulaR1C1 = "=DATE(2019, 5, 31)"
Range("C3").Select
Selection.AutoFill Destination:=Range("C3:C75")
Range("C3:C75").Select
End Sub
答案 0 :(得分:2)
您可以使用EOMONTH
=EOMONTH(D3,-1)
或使用VBA
Sub LastDayofPriorMonth()
ActiveSheet.Range("C3:C75").Formula = "=EOMONTH(D3, -1)"
End Sub
这可以与@donPablo的评论结合起来给您
Sub LastDayofPriorMonth()
ActiveSheet.Range("C3:C75").Formula = "=IF(ISBLANK(D3),"""",EOMONTH(D3, -1))"
End Sub
答案 1 :(得分:0)
您始终可以使用以下代码获取上个月的最后一天
Lastday = DateAdd(“ d”,-Day(Date),Date)
您可以使用多种方式来过滤数据
对于r = 3到72
如果activesheet.cells(r,4)=“”,那么activesheet.cells(r,3)=“”
下一个
让我知道任何问题