MTNQ > 17-06-18, 03:11 PM
If .Recordset.BOF And .Recordset.EOF Then Exit Sub
ongke0711 > 17-06-18, 08:52 PM
(17-06-18, 03:11 PM)MTNQ Đã viết: ...
Việc "Đưa cả loaddata và savedata lên module" thì mình thấy không khả thi vì rất khó để dùng chung cho tất cả các form, hơn nữa code cũng không gọn hơn được bao nhiêu (Đối với ADO hay .Net thì khác, ta có thể xây dựng module hoặc Class để kết nối dữ liệu...)
Function GetRecord(rs As DAO.Recordset, frm As Form)
Dim fld As Field
Dim ctl As control
For Each fld In rs.Fields
For Each ctl In frm.Controls
If ctl.Name = "txt" & fld.Name Or ctl.Name = "cbo" & fld.Name Or ctl.Name = "chk" & fld.Name Then
ctl = rs.Fields("" & fld.Name & "").Value
ElseIf ctl.Name = "img" & fld.Name Then
On Error Resume Next
ctl.Picture = CStr(rs.Fields("" & fld.Name & "").Value)
End If
Next
Next
End Function
Function AddRecord(rs As DAO.Recordset, frm As Form)
Dim fld As Field
Dim ctl As control
rs.AddNew
For Each fld In rs.Fields
For Each ctl In frm.Controls
If ctl.Name = "txt" & fld.Name Or ctl.Name = "cbo" & fld.Name Or ctl.Name = "chk" & fld.Name Then
rs.Fields("" & fld.Name & "").Value = ctl
End If
Next
Next
rs.Update
End Function