you could test the sql string of the query for the string 'As fieldname'. If it's there it is a formula otherwise it's a field from the table.
Function testname(fname As String)
testname = "Table"
Dim strsql
Dim qdf As DAO.QueryDef
Set qdf = CurrentDb.querydefs("queryname")
strsql = qdf.SQL
If InStr(1, strsql, "As " & Trim(fname)) > 0 Then testname = "Calc"
End Function