Change the cell value of date by a word using a macro in an excel report

Not all the time I need to delete a row out of date, in this occasion, I just have to change its value, it can be by a word, an empty cell, etc. For example, all cells with a date of next month (for instance 19/10/2019), I need to put the word “next month”.

macro excel macro excel

 

When I use the macro ?

To change the date out of scope by a word.

 

How to create the macro ?

Read How to create, edit, hide and select a macro in an excel report

 

How to create the button to associate it with the macro ?

Read How to create a button and associated it to a macro in an excel report

 

How is/are the macro(s) ?

Copy the code below and paste it into your macro. You will see my comments in green if exist so follow the help to adapt to your need.


Sub test()
Dim MyRange As Range
Dim MyCell As Range
' change B2:B20 by your date column reference
Set MyRange = Range("B2:B20")
For Each MyCell In MyRange.Cells
  If VarType(MyCell) = vbDate Then
    ' for previous month, change >= Int(DateSerial(Year(Date), Month(Date) + 1, 1)) by < Int(DateSerial(Year(Date), Month(Date), 1 - 1))
    If MyCell >= Int(DateSerial(Year(Date), Month(Date) + 1, 1)) Then
      ' change next month by what you want
      MyCell = "next month"
    End If
  End If
Next MyCell
End Sub

Interesting Topics