اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

  • أفضل إجابة
قام بنشر (معدل)

وعليكم السلام ورحمة الله تعالى وبركاته 

رغم انني أعتقد أنك يجب عليك اتخاد مزيدا من الاجراءات لحماية الملف لاكن سأحاول في الكود التالي تنفيد طلبك إعتمادا على تخزين وقت الدخول الخاطئ في ورقة مخفية تمت إظافتها للملف بإسم Sheet1  يمكنك تعديلها بما يناسبك  (يمكنك نخزينه في اي ورقة موجودة مسبقا على المصنف)

فرغ نمودج المستخدم الخاص بك من جميع الأكواد السابقة وقم بنسخ هدا 

Private Sub CommandButton1_Click()
    Dim WS As Worksheet
    Dim Utilisateu As String, Passe As String
    Dim key As Date
    Static Compter As Integer
    
    Set WS = ThisWorkbook.Sheets("Sheet1")
    key = WS.[A1]
    
    '**** تم تحديد قفل الملف 30 ثانية للتجربة****
    Clé = Now + TimeValue("00:00:30")
    '********************************************
    
    'Clé = Now + TimeValue("00:30:00") ' تحديد وقت القفل بعد 30 دقيقة
    WS.Visible = xlSheetVeryHidden
    Utilisateu = TextBox1.Value   'اسم المستخدم
    Passe = TextBox2.Value    ' الرقم السري
    
    ' تغيير لون خلفية مربع كلمة المرور عند الإدخال الخاطئ
    TextBox2.BackColor = RGB(255, 255, 255)  ' اللون الافتراضي
    
    If key > Now Then
        MsgBox "الملف مغلق يرجى المحاولة مرة أخرى بعد " & _
            Format(key - Now, "hh:mm:ss") & ".", vbExclamation, "تعذر الدخول للملف"
        ThisWorkbook.Save
        ThisWorkbook.Close False
        Exit Sub
    End If
    
    If Utilisateu = "admin" And Passe = "1234" Then
        Compter = 0
        MsgBox Utilisateu & " مرحبًــا بك", vbInformation, "ترحيب"
        Application.Visible = True
        Unload Me
    Else
        Compter = Compter + 1
        TextBox2.BackColor = RGB(255, 0, 0)  ' تغيير اللون إلى الأحمر عند الإدخال الخاطئ
        
        If Compter >= 3 Then   ' تحديد عدد المحاولات المسموح بها
            key = Clé: WS.[A1] = key
            MsgBox "تم قفل الملف لمدة 30 دقيقة", vbCritical, "تعذر الدخول للملف"
            Compter = 0
            ThisWorkbook.Save
            ThisWorkbook.Close False
            Exit Sub
        Else
            MsgBox "بيانات الدخول غير صحيحة. محاولة " & _
                Compter & " من 3", vbExclamation, "إنتباه"
        End If
    End If
End Sub

وفي حدث ThisWorkbook

Private Sub Workbook_Open()
    Dim kay As Date
    On Error Resume Next
    kay = Sheets("Sheet1").Range("A1").Value
    On Error GoTo 0
    
    If kay > Now Then
        MsgBox "الملف مغلق يرجى المحاولة مرة أخرى بعد " & _
        Format(kay - Now, "hh:mm:ss") & ".", vbExclamation, "تعذر الدخول للملف"
        ThisWorkbook.Save
        ThisWorkbook.Close False
    Else
        Application.Visible = False
        UserForm1.Show
    End If
End Sub

بالتوفيق..

 

دخول بعد ساعة.xlsm

تم تعديل بواسطه محمد هشام.
  • Like 2

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information