Tạo form đăng nhập trong Excel

Liên hệ QC

truongminhthi999

Thành viên mới
Tham gia
10/5/11
Bài viết
27
Được thích
2
Giới tính
Nam
Chào các bạn! Mình có làm một bài Excel tạo form đăng nhập nhưng mình chưa tạo được form thay đổi thông tin đăng nhập khi đăng nhập đúng. Do đó, khi muốn thay đổi phải mở Vba lên để mà thay đổi trong đó. Rất là phiền phức. Bạn nào biết thì chỉ dùm nhe. Tải file đính kèm xem thử nhe!
Xin cám ơn.
Liên lạc với mình qua truongminhthi999@gmail.com
 

File đính kèm

  • Ðang nh_p.rar
    18.7 KB · Đọc: 2,672
Đơn giản là như vầy, tạo một module rồi chép thủ tục dưới đây vào trong đó:
Chép trong ThisWorkbook thủ tục của sự kiện Open:

Mã:
Private Sub Workbook_Open()
    On Error Resume Next
    [COLOR=#0000ff]''Thoi han su dung:[/COLOR]
    If Date > DateSerial([COLOR=#ff0000][SIZE=3][B]2014, 3, 12[/B][/SIZE][/COLOR]) Then
        MsgBox "Het han su dung"
        GoTo ExitSub
    [COLOR=#0000ff]''Kiem tra so series, neu dung may minh moi cho mo file:[/COLOR]
    ElseIf ReadSeriesNumber <> MyComputerSeries Then
        MsgBox "May nay khong duoc quyen su dung"
        GoTo ExitSub
    Else
        MsgBox "Ban da xem duoc file!"
    End If
    Exit Sub
ExitSub:
    If Workbooks.Count = 1 Then
        Application.Quit
    Else
        ThisWorkbook.Close False
    End If
End Sub
Lâu ngày lục lại bài của Bạn nghĩa ôn lại một tí
Dòng Date chữ to màu đỏ giả thiết đến ngày đó người ta vào Control Panel chỉnh lùi lại ngày thì có giải pháp nào khắc phục được không Bạn...
(Điều Kiện Không chỉnh code và Mcros đã Enable)
 
Upvote 0
Lâu ngày lục lại bài của Bạn nghĩa ôn lại một tí
Dòng Date chữ to màu đỏ giả thiết đến ngày đó người ta vào Control Panel chỉnh lùi lại ngày thì có giải pháp nào khắc phục được không Bạn...
(Điều Kiện Không chỉnh code và Mcros đã Enable)
Cái này không chỉ ở Excel mà các phần mềm khác cũng dính chưởng vụ chỉnh ngày giờ hệ thống với các bản Demo.

Thường là người ta so sánh vừa ngày giờ hệ thống, vừa ngày giờ Internet. Nhưng giả thiết đặt ra là không kết nối mạng thì lấy gì so sánh?

Cho nên trong trường hợp như thế thì bó tay toàn tập, hoặc ngoài sức của tôi.
 
Upvote 0
Cho hỏi anh Nghĩa
File Quyendangnhap sau khi tạo ra 9 user thì nó nằm lộn xộn và chồng lên nhau. Mình làm sao để sắp xếp theo thứ tự để nhìn cho đẹp mắt. Nhờ anh giúp nhe. Thanks
 

File đính kèm

  • .jpg
    .jpg
    46.5 KB · Đọc: 121
Upvote 0
Cho hỏi anh Nghĩa
File Quyendangnhap sau khi tạo ra 9 user thì nó nằm lộn xộn và chồng lên nhau. Mình làm sao để sắp xếp theo thứ tự để nhìn cho đẹp mắt. Nhờ anh giúp nhe. Thanks
Bạn Unprotect sheet rồi dùng chuột kéo các nút lại vị trí mình muốn một cách thủ công. Vì hiện tại a Nghĩa đang quy định mỗi khi tạo sheet/user mới thì nó nằm ở đâu đó trên cột N. Kinh nghiệm của mình là tạo các sheet data trước, sau đó chỉnh sửa rồi mới tạo lần lượt từng user vì ở các user mới vị trí của các nút sẽ giống với vị trí đã đặt ở user Admin. Nếu bạn không thích cũng làm tương tự ở các sheet User Home để chỉnh sửa vị trí các nút theo ý muốn.
 
Upvote 0
pinklove ơi cho mình hỏi, File Quyendangnhap mình tải xuống, mình không có pass để Unprotect. Bạn biết chỉ mình với
 
Upvote 0
Cái này không chỉ ở Excel mà các phần mềm khác cũng dính chưởng vụ chỉnh ngày giờ hệ thống với các bản Demo.

Thường là người ta so sánh vừa ngày giờ hệ thống, vừa ngày giờ Internet. Nhưng giả thiết đặt ra là không kết nối mạng thì lấy gì so sánh?
Cho nên trong trường hợp như thế thì bó tay toàn tập, hoặc ngoài sức của tôi.

Giả sử họ chỉnh ngày giờ hệ thống đi nhưng nếu trong file có sử dụng đến cái hàm ngày tháng thì ứng dụng cũng chạy sai theo. Như vậy việc sử dụng ứng dụng đó k còn ý nghĩa nữa.

Ngoài ra khi thay đổi ngày giờ hệ thống thỉ cũng không vào google được ( tôi đã từng bị ).
 
Upvote 0
Trong file đó, bạn tạo thêm 1 module (tôi gọi là ModuleSeries) và chép vào hàm này:

Mã:
Function ReadSeriesNumber()
    With CreateObject("Scripting.FileSystemObject")
        With .GetDrive(Environ("SystemDrive"))
            If .IsReady Then
                ReadSeriesNumber = Abs(.Serialnumber)
            Else
                ReadSeriesNumber = -1
            End If
        End With
    End With
End Function


Sau đó dùng hàm đó để kiểm tra máy của bạn có Series là bao nhiêu.

dùng thủ tục này để kiểm tra:

Mã:
Sub test()
    Debug.Print ReadSeriesNumber
End Sub

Sau khi có số series, bạn đặt câu màu đỏ này lên trên cùng của ModuleSeries


Public Const YourSeries As Long = 1964788159 '<<< Số series của máy tính bạn thay cho số này.

Bây giờ, code của sự kiện Open sẽ như sau:

Mã:
Private Sub Workbook_Open()
    On Error Resume Next
    If Date >= DateSerial(2010, 6, 20) Then
        MsgBox "Het han su dung"
        Call KillFile 'Hoac thay bang Application.Quit
[COLOR=#0000ff]    ElseIf [/COLOR][COLOR=#ff0000]ReadSeriesNumber <> YourSeries[/COLOR][COLOR=#0000ff] Then[/COLOR]
[COLOR=#0000ff]        MsgBox "May nay khong duoc quyen su dung"[/COLOR]
[COLOR=#0000ff]        Call KillFile 'Hoac thay bang Application.Quit[/COLOR]
    Else
        Call StructureUnLock
        With Home
            .Select
            .cmdAdmin.Enabled = False
            .cmdUser1.Enabled = False
            .cmdUser2.Enabled = False
            .cmdUser3.Enabled = False
        End With
        Application.ScreenUpdating = False
        Dim sh As Worksheet
        For Each sh In ThisWorkbook.Worksheets
            If sh.CodeName <> "Home" Then
                sh.Visible = xlSheetVeryHidden
            End If
        Next
        UsfUser.Show
    End If
End Sub


Cái Call StructureUnLock nó ở đâu chú Nghiã nhể
 
Upvote 0
A Hoàng Trong Nghia ơi sao em tải ve khong dung duoc

Đây là file "Demo" cho bạn dùng thử chơi cho vui nè! Mọi password đều là HoangTrongNghia.

Trong file tôi có 4 người được dùng, với Admin là cao nhất, sử dụng được mọi thứ, kể cả reset lại tất cả user & pass (thủ công, nếu muốn tự động, tự các bạn mày mò đi nhé, không khó); và 3 User, chỉ được quyền mở sheet của mình.

[NOTE1]Các Username / Password:

1) ADMIN / Admin

2) USER1 / User1

3) USER2 / User2

4) USER3 / User3[/NOTE1]

Các bạn cứ lần lượt mở file rồi chọn thử từng Username xem sao (mở và đóng 4 lần), nên chọn lần cuối là Admin cho thú vị!

[TIP]Click vào Box Username để xổ ra danh sách Users nha các bạn

attachment.php
[/TIP]



File đã được cập nhật mới, sửa lỗi đăng nhập, các bạn nên tải file AdminAndUsers2.rar nhé!
A Hoàng Trong Nghia ơi sao em tải ve khong dung duoc
 
Upvote 0
AdminAndUsers2 Xin được hướng dẫn cách làm

Tôi rất hứng thú và phục Hoàng Trọng Nghĩa làm được file này!
Tôi hiện đang công tác tại phòng GD-ĐT quận Phú Nhuận
Tôi đang thực hiện một file báo cáo tháng có sự phân quyền từng sheet như vậy cho từng đơn vị rồi đưa vào trang web để các đơn vị thực hiện báo cáo tháng online - thuận tiện cho công tác quản lý.
Xin gởi file excel tôi đang làm và mong được sự chia sẻ.
Nếu được hướng dẫn thực hiện xin được hậu tạ.

đt: 0909010685.
email: dinhquangtranphuc@gmail.com
 
Upvote 0
Upvote 0
Tôi có làm học và làm 1 from đăng nhập như thế này, bạn xem được ko
 

File đính kèm

  • matkhau.xlsm
    49.8 KB · Đọc: 75
Upvote 0
Thầy Nghĩa ơi! Em đang dùng mẫu Form đăng nhập này của thầy và chế lại chút xíu cho phù hợp với yêu cầu công việc của em. Thầy chỉ giúp em các vấn đề sau:
1. Cách tạo, chỉnh sửa, di chuyển các nút tạo link liên kết (ví dụ: trong sheet Home có 4 User đăng nhập, giờ 1 muốn thêm 1 cái User nữa thì phải làm sao ạ.
2. Em muốn chỉnh sửa bài trí sheet Home theo ý của em thì phải làm sao ạ.
Em mới mày mò với VBA nhưng công việc đang cần mong thầy Nghĩa chỉ giáo tận tình giúp em ạ.
Em cảm ơn Thầy Nhiều!
 
Upvote 0
Thày Nghĩa của bạn chắc đang nghĩ chế độ Vợ đẽ tuần nay rồi!
 

File đính kèm

  • HTNg.JPG
    HTNg.JPG
    32.8 KB · Đọc: 87
Upvote 0
Web KT
Back
Top Bottom