I did end up getting this working. I'll lay out an outline of what I did:
Code on the Form's module:
Code:
Option Compare Database
Private Sub Go_Click()
dateRange = Me!txtMonthRange.Value
returnDateRange
Me.Recalc
Me.Refresh
End Sub
Public function in a public module:
Code:
Public dateRange As Integer
Public Function returnDateRange()
returnDateRange = dateRange
End Function
Criteria for the date in the source query for each chart:
Code:
>=DateAdd("m",-returnDateRange(),Date())
The reason for using the global pass-through function is that having the whole reference expression inside of the DateAdd function gives you an error; Access considers it to be too complicated. This reduces the complexity of the expression to an acceptable level...