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

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

قام بنشر

السلام عليكم

الاخوة الافاضل 

لدى كود لا اريد ان يتم استخدامه الا من خلال كلمه سر

اى عند الضغط على الزر يظهر تكست بوكس يطالب بادخال كلمه سر 

اذا كانت صحيحه  يتم تنفيذ الكود

واذا كانت كلمه الشر خطاء لا يتم عمل الكود

هل يمكن ذلك

Sub addition()
Dim ER, R
ER = ActiveSheet.UsedRange.Rows.Count
For R = 8 To ER
If WorksheetFunction.IsNumber(Cells(R, 7)) = True And _
Cells(R, 7) <> 0 Then Cells(R, 7) = Cells(R, 7) + 1
If WorksheetFunction.IsNumber(Cells(R, 23)) = True And _
Cells(R, 23) <> 0 Then Cells(R, 23) = Cells(R, 23) + 1
Next R
End Sub
 

 

قام بنشر

السلام عليكم

أخى الفاضل

جرب هذا التعديل

Sub addition()
Dim ER, R
pass = "123"
ansr = InputBox("أدخل كلمة المرور أولا ")
If ansr <> pass Then Exit Sub
ER = ActiveSheet.UsedRange.Rows.Count
For R = 8 To ER
If WorksheetFunction.IsNumber(Cells(R, 7)) = True And _
Cells(R, 7) <> 0 Then Cells(R, 7) = Cells(R, 7) + 1
If WorksheetFunction.IsNumber(Cells(R, 23)) = True And _
Cells(R, 23) <> 0 Then Cells(R, 23) = Cells(R, 23) + 1
Next R
End Sub
قام بنشر

السلام عليكم

اخى الحبيب رجب جاويش

حاولت ان اضيف اضافه ان يغلف الملف بعد عدد 3 محاولات 

ولاكن لم اوفق 

هلى من حل لتصحيح الخطاء

Sub addition()

Dim ER, R

pass = "123"

sama = InputBox("إدخل الباسورد لتنفيذ الماكرو")

If sama <> pass Then

MsgBox ("الباسورد خطاء (الإدخال الخاطئ اكثر من 3 محاولات يقفل البرنامج)")

ss = ss + 1

If ss> 3 Then

  Application.DisplayAlerts = False

  Application.Quit

End If

ER = ActiveSheet.UsedRange.Rows.Count

For R = 8 To ER

If WorksheetFunction.IsNumber(Cells(R, 7)) = True And _

Cells(R, 7) <> 0 Then Cells(R, 7) = Cells(R, 7) + 1

If WorksheetFunction.IsNumber(Cells(R, 23)) = True And _

Cells(R, 23) <> 0 Then Cells(R, 23) = Cells(R, 23) + 1

Next R

End Sub

  • أفضل إجابة
قام بنشر

السلام عليكم

أخى الفاضل

إجعل الكود بالشكل التالى

Public ss As Byte

Sub addition()
Dim ER, R
pass = "123"
sama = InputBox("إدخل الباسورد لتنفيذ الماكرو")
If sama <> pass Then
ss = ss + 1
MsgBox ("الباسورد خطأ (الإدخال الخاطئ اكثر من 3 محاولات يقفل البرنامج)" & Chr(10) & " " & "باقى لك عدد" & " " & 3 - ss & " " & "محاولة")
If ss >= 3 Then
Application.DisplayAlerts = False
Application.Quit
End If
Exit Sub
End If
ER = ActiveSheet.UsedRange.Rows.Count
For R = 8 To ER
If WorksheetFunction.IsNumber(Cells(R, 7)) = True And _
Cells(R, 7) <> 0 Then Cells(R, 7) = Cells(R, 7) + 1
If WorksheetFunction.IsNumber(Cells(R, 23)) = True And _
Cells(R, 23) <> 0 Then Cells(R, 23) = Cells(R, 23) + 1
Next R
End Sub
قام بنشر

أخى الفاضل : أبو حنين

Public   ( عام )

هى كلمة تستخدم لتعريف المتغيرات

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

 

أما Byte  فهو نوع من أنواع البيانات التى تخزن داخل المتغير

وهو أصغر أنواع البيانات مساحة حيث يشغل في ذاكرة الكمبيوتر 1 بايت ومداه الأرقام الصحيحة الموجبة  من صفر إلى 255 فقط

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