Cho phép sử dụng file có thời hạn

Liên hệ QC
Cảm ơn bác ndu đã động viên. mình cũng thực hiện code nói chung cũng thõa mãn được ý đồ ban đầu đặt ra và mình có thêm vào phần nhập mật khẩu để khi cần tri xét lại hồ sơ củ có thể mở ra để đối chiếu nhưng có 2 vấn đề mình không ưng ý lắm và đang tìm cách nhưng chưa biết làm như thế nào. Mong các Bác chỉ hộ.
1-Trong form nhập pass mình có thể cho phép nhập lại nếu pass sai, sau 3 lần nhập vẫn sai ta có thể thoát ứng dụng luôn
2- ký tự nhập vào không thể hiện trên textbox mà có thể là dấu chấm hay sao gì đấy.
Rất mong được hướng dẫn. Xin cảm ơn
 

File đính kèm

  • DuePass.xls
    65.5 KB · Đọc: 26
1-Trong form nhập pass mình có thể cho phép nhập lại nếu pass sai, sau 3 lần nhập vẫn sai ta có thể thoát ứng dụng luôn
Cũng có thể là vầy:
PHP:
Private iCount As Long
Private Sub CmdPassCancel_Click()
  ThisWorkbook.Close True
End Sub
PHP:
Private Sub CmdPassOk_Click()
  If TxtPass <> "102011" Then
    iCount = iCount + 1
    If iCount >= 3 Then CmdPassCancel_Click
    MsgBox "Ban da nhap sai password " & iCount & " lan" & vbLf & _
           "Vui long nhap lai!"
    Me.TxtPass.Text = ""
    Me.TxtPass.SetFocus
  Else
    Unload Me
  End If
End Sub
Biến iCount để đếm số lần nhập sai ---> 3 lần nhập sai xem như thoát luôn
2- ký tự nhập vào không thể hiện trên textbox mà có thể là dấu chấm hay sao gì đấy.
TextBox có thuộc tính PasswordChar chuyên dùng cho việc này ---> Đặt thuộc tính PasswordChar = * là xong!
-----------------------------
Lưu ý: Không nên dùng Application.Quit vì nó sẽ đóng toàn bộ các file Excel đang mở đấy ---> Chỉ nên dùng Thisworkbook.Close là đủ rồi (đóng file của mình thôi)
-----------------------------
Tôi chỉ mới test sơ qua, chưa biết có gì trục trặc hay không... bạn test lại nhé
 

File đính kèm

  • DuePass.xls
    32.5 KB · Đọc: 56
Cảm ơn Bác ndu96081631 đã giúp. nhưng làm sao để khi người sử dụng click vào dấu [x] để đóng form nhập password thỉ wordbook cũng đóng theo luôn hả Bác.
Cảm ơn Bác nhiều nha.
 
Cảm ơn Bác ndu96081631 đã giúp. nhưng làm sao để khi người sử dụng click vào dấu [x] để đóng form nhập password thỉ wordbook cũng đóng theo luôn hả Bác.
Cảm ơn Bác nhiều nha.
Cũng có thể là vầy;
PHP:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  If CloseMode = 0 Then CmdPassCancel_Click
End Sub
Thí nghiệm nhé
----------------
Ngoài ra bạn cũng có thể vô hiệu hóa hoặc ẩn luôn dấu X này ---> Tùy ý ---> Các bài viết có liên quan đến dấu X trên UserForm có đầy trên GPE rồi! Tìm hiểu xem
 
Cũng có thể là vầy;
PHP:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  If CloseMode = 0 Then CmdPassCancel_Click
End Sub
Thí nghiệm nhé
----------------
Ngoài ra bạn cũng có thể vô hiệu hóa hoặc ẩn luôn dấu X này ---> Tùy ý ---> Các bài viết có liên quan đến dấu X trên UserForm có đầy trên GPE rồi! Tìm hiểu xem
Sau một tháng áp dụng việc đặt thời hạn sử dụng cho file giờ mới thấy có vấn đề. Khi hết tháng phải nhập Pass để đăng nhập vào, mõi tháng là một Pass sao này nhiều tháng cũng khó nhớ và việc mở lại file củ cũng khó khăn.
Nên e muốn pass chỉ xuất hiện khi mở file template đã hết thời hạn sử dụng, còn khi mở file template còn hạn sử dụng sẽ không hỏi pass và sự kiện save as sẽ vô hiệu vĩnh viễn pass luôn.
Xin cảm ơn nhiều!
 
Cũng có thể là vầy:
PHP:
Private iCount As Long
Private Sub CmdPassCancel_Click()
  ThisWorkbook.Close True
End Sub
PHP:
Private Sub CmdPassOk_Click()
  If TxtPass <> "102011" Then
    iCount = iCount + 1
    If iCount >= 3 Then CmdPassCancel_Click
    MsgBox "Ban da nhap sai password " & iCount & " lan" & vbLf & _
           "Vui long nhap lai!"
    Me.TxtPass.Text = ""
    Me.TxtPass.SetFocus
  Else
    Unload Me
  End If
End Sub
Biến iCount để đếm số lần nhập sai ---> 3 lần nhập sai xem như thoát luôn

TextBox có thuộc tính PasswordChar chuyên dùng cho việc này ---> Đặt thuộc tính PasswordChar = * là xong!
-----------------------------
Lưu ý: Không nên dùng Application.Quit vì nó sẽ đóng toàn bộ các file Excel đang mở đấy ---> Chỉ nên dùng Thisworkbook.Close là đủ rồi (đóng file của mình thôi)
-----------------------------
Tôi chỉ mới test sơ qua, chưa biết có gì trục trặc hay không... bạn test lại nhé


Anh cho em xin code như trên nhưng khi nhập pass sai n lần nó sẽ tự xoá file luôn được không ạ.
Em xin cảm ơn !!!
 
To nguyenduong109


Bảo mật, hẹn ngày sử dụng, xóa file,Tạo CDkey,Tạo file chỉ sử dụng trên một máy và chống lùi ngày nói chung làm được hết... nhưng viết trực tiếp trên Excel thì có cũng như không....

Nếu bạn biết Viết trên VB6, Vb.net hay tools khác (*.dll) thì hãy tính đến bảo mật ....nếu chưa biết viết như vậy thì có gì mà bảo mật chứ..........//**/
 
Web KT
Back
Top Bottom