In that case, you could use a Document_Close macro in your document's 'ThisDocument' code module, coded along the lines of:
Private Sub Document_Close()
Dim DataFile As String, StrData As String, CCtrl As ContentControl
DataFile = "C:\Users\" & Environ("UserName") & "\Documents\Data.txt"
StrData = "": Open DataFile For Append As #1
StrData = Format(Now, "DD-MMM-YYYY hh:mm:ss")
For Each CCtrl In ThisDocument.ContentControls
With CCtrl
Select Case .Type
Case Is = wdContentControlCheckBox
StrData = StrData & vbTab & .Checked
Case wdContentControlDate, wdContentControlDropdownList, wdContentControlRichText, wdContentControlText
StrData = StrData & vbTab & .Range.Text
Case Else
End Select
End With
Next
Print #1, StrData: Close #1
End Sub
To use it, create a file named 'Data.txt' in your Documents folder, with the first line containing 'Date & Time' followed by each of your content control titles (in order) preceded by a tab in each case. Whenever you close the document, the 'Data.txt' file will be updated - each entry will have a date/time stamp.
Short of disabling macros when you open the document, there really is no way of both preventing updates to the data file if the document is just opened & closed and, at the same time, ensuring saved updates you might do to prevent data loss are captured. The alternative, if you're prepared to have a prompt every time you close the file, is to insert something like:
If MsgBox("Save Data?", vbYesNo) <> vbYes Then Exit Sub
as the first code line.
Change the DataFile details to suit your requirements.