RE: Vấn đề thêm mới dữ liệu từ form vào table.
maixuanthu > 17-05-13, 05:54 PM
Theo mình nghĩ bạn không nên chọn mã hóa đơn là autunumber, mà là kiểu text thì mình sẽ dễ xử lý hơn.
Mình làm 2 nút, 1 nút thêm và 1 nút lưu. Khi nhấn nút THÊM thì sẽ cho mình nhập liệu, khi nhập xong thì bạn nhấn nút LƯU thì dữ liệu sẽ lưu vào table cho bạn đã chọn làm nguồn.
Đây là code của mình, gửi bạn tham khảo nhe. Vì đây là bài của mình nên bạn về sửa lại thành cơ sở dữ liệu của bạn nhe.
Nút THÊM:
Private Sub cmdthem_Click()
DoCmd.GoToRecord , , acNewRec
Me.cmdke.Enabled = False
Me.cmdtruoc.Enabled = False
Me.cmdsua.Enabled = False
Me.cmdxoa.Enabled = False
Me.cmdthoat.Enabled = True
Me.cmdluu.Enabled = True
End Sub
Nút LƯU
Private Sub cmdluu_Click()
Dim db As Database
Dim rc As Recordset
Dim cm
Dim str
Dim dung As Boolean
If IsNull(Me.stt_pt) = True Then
str = MsgBox ("So thu tu phieu thu khong duoc bo trong!", vbInformation, "Thông Báo")
Exit Sub
End If
dung = False
Set db = CurrentDb()
Set rc = db.OpenRecordset("phieuthu")
cm = Me.stt_pt.Value
Do Until rc.EOF
If rc![stt_pt] = cm Then
dung = True
End If
rc.MoveNext
Loop
rc.Close
If dung = True Then
str = MsgBox ("Phieu nay da co nay da ton tai!!Ban co muon thay the khong?", vbYesNo + vbInformation, "Thông Báo")
If str = vbYes Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Me.cmdthem.Enabled = True
Me.cmdtruoc.Enabled = True
Me.cmdke.Enabled = True
Me.cmdsua.Enabled = True
Me.cmdxoa.Enabled = True
Me.cmdthoat.Enabled = True
Me.AllowEdits = False
End If
Exit Sub
End If
If IsNull(Me.stt_pt) = True Or IsNull(Me.ngayghi) = True Or IsNull(Me.sotienthu) = True Or IsNull(Me.nguoighi) = True Or IsNull(Me.mahv) = True Then
str = MsgBox ("Ban can dien day du thong tin!!", vbInformation, "Thông Báo")
Exit Sub
End If
If IsNull(Me.stt_pt) = False And IsNull(Me.ngayghi) = False And IsNull(Me.sotienthu) = False And IsNull(Me.nguoighi) = False And IsNull(Me.mahv) = False And dung = False Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
str = MsgBox ("Ban da luu thanh cong!", vbInformation, "Thông Báo")
Me.cmdthem.Enabled = True
Me.cmdtruoc.Enabled = True
Me.cmdke.Enabled = True
Me.cmdsua.Enabled = True
Me.cmdxoa.Enabled = True
Me.cmdthoat.Enabled = True
Exit Sub
End If
End Sub