Chào mừng các bạn đã ghé thăm blog của tôi

Diễn đàn dành cho những người yêu công nghệ số

Thứ Bảy, 12 tháng 3, 2011

Hướng dẫn tạo form chỉ cho phép mở một số lần cố định


hướng dẫn này cho phép chúng ta tạo 1 form chỉ cho phép người dùng mở 5 lần.
Có thể dùng ràng buộc người dùng phải đăng ký để dùng tiếp.

----------------------------------------------------------
Tác giả và demo: Cafe Via He
Site: http://thuthuataccess.co.cc/forum
Vui lòng giữ tên tác giả và site nếu bạn dùng hoặc chia sẻ code này.
------------------------------------------------
Tạo 1 table tên là FormInfo(FormName,times)
Formname: Text
Times: number

1 Form tên là demo
Trong đó, vẽ 1 textbox tên là txtT để thể hiện số lần mở form. Các yếu tố màu mè khác. Form sẽ có dung nhan như sau

Trong sự kiện Openform, bạn dùng code sau:
Mã:
Private Sub Form_Open(Cancel As Integer)
DoCmd.SetWarnings False
Dim frm As String
Dim t As Integer

    frm = DCount("formname", "Forminfo", "formname='" & Me.Name & "'")
    t = Nz(DLookup("times", "Forminfo", "formname='" & Me.Name & "'"), 0)
    
If frm = 0 Then 'Neu form chua mo lan nao
    t = t + 1
    DoCmd.RunSQL "Insert into Forminfo(formname,times) values('" & Me.Name & "'," & t & ")"
    txtT = t    
ElseIf frm > 0 And t < 100 Then 'Cong don so lan mo form
    t = t + 1
    DoCmd.RunSQL "Update FormInfo set Times =" & t
    txtT = t
ElseIf frm > 0 And t = 100 Then ' Neu da mo form duoc 5lan
    MsgBox "BAN DA HET THOI GIAN DUNG THU- HAY DANG KY BAN QUYEN VOI TAC GIA" & vbCrLf & vbCrLf
    Cancel = True
End If

End Sub
( Lưu ý: không cần tạo form nào cả mà muốn khóa form nào chỉ cần copy code dán vào form đó là được,và tạo một textbox có tên là txtT trên form đó là xong)

Và nếu form này mở quá 5 lần thì chương trình sẽ không cho mở form nữa!

Không có nhận xét nào:

Đăng nhận xét