Thanks. I noticed that I was supposed to be showing Project ID or any other field (I tried a text field too) in the following line in addition to fields I am testing against. That was the only difference between what you have and I have. But it does not work. I don't know if triggering this from a sub form stops it from writing to the table.
Call LogChange(Me.DevCode, " Construction form ", strField & " changed from " & strold & " to " & strnew)
Maybe the following public function is not working in some ways?
Function LogChange(lngField As String, strForm As String, strNotes As String)
'From
http://www.access-diva.com/
Dim strSQL As String
strSQL = "INSERT INTO tblLog ( lID, lLogDate, lUserID, lNotes, lSystemForm )" & _
" SELECT '" & lngField & "' AS ID, Now(), GetUserID(), '" & strNotes & "', '" & strForm & "'"
CurrentDb.Execute strSQL, dbFailOnError
End Function