Dacă este necesară afişarea rezultatului unei interogări care foloseşte anumite funcţii (SUM, AVERAGE, MIN, MAX etc.) într-un textbox, la acţionarea unui buton, se poate realiza relativ simplu, prin folosirea unei variabile de tip Recordset.
Private Sub Command98_Click()
Dim rst As DAO.Recordset
Dim rez_sql As String
Dim d_data_cur As Date
Dim s_data_cur As String
d_data_cur = DateValue(Me!txt_data_zilei)
s_data_cur = Format(d_data_cur, "yyyy\/mm\/dd")
rez_sql = "SELECT Sum(DateDiff('n',[ora_act_start],[ora_act_sf])) AS ore_zi " & _
"FROM t_zi_lucru INNER JOIN q_start_act ON t_zi_lucru.zi_id = q_start_act.zi_id " & _
" WHERE zi_lucru =#" & s_data_cur & "#;"
Set rst = CurrentDb.OpenRecordset(rez_sql)
Me.txt_total_lucru.value = rst!ore_zi
rst.Close
Set rst = Nothing
End Sub
Într-un alt exemplu, să presupunem că ne-ar interesa afişarea valorii maxime a unui câmp de tip numeric. Pentru aceasta, vom folosi o variabilă tip String (str_max_gr), care va stoca rezultatul interogării, apoi acesta va fi preluat, în variabila tip Recordset (rst) după cum urmează:
Private Sub cmd_Adaug_gr_Click()
Dim str_max_gr As String
Dim rst As DAO.Recordset
str_max_gr = "SELECT Max(nr_gr) AS max_nr_gr FROM t_gr_ident_gr"
MsgBox str_max_gr
Set rst = CurrentDb.OpenRecordset(str_max_gr)
MsgBox rst!max_nr_gr
Me.testVBA.Value = rst!max_nr_gr
End Sub

După cum se observă în figura 2, rezutatul apare în textbox (17); pentru comparaţie între cele două variabile (String şi Recordset) am inserat şi două mesaje, ca să se vadă rezultatul diferit (sintaxă, respectiv, valoare).