Rather than check for the 1st, check that the month is not the same month as that entered in some cell or a file property. In other words, when you do the update, update the cell or file property value to that date.
Here is a method that you can adapt. Notice that it adds information to a hidden sheet named Log that is password protected. You can set it to the Open event easily enough. You can easily just use say A1 on sheet Log for what you need.
'VOG II,http://www.mrexcel.com/forum/showthread.php?p=1666961#post1666961
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NR As Long
If Intersect(Target, Range("F15:F25")) Is Nothing Then Exit Sub
With Sheets("Log")
.Unprotect Password:="xyz"
NR = .Range("A" & Rows.Count).End(xlUp).Row + 1
.Range("A" & NR).Value = Target.Address(False, False)
.Range("B" & NR).Value = Now
.Range("C" & NR).Value = Environ("username")
.Protect Password:="xyz"
End With
End Sub