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

كلمة سر لكى يعمل كود من خلال زر


إذهب إلى أفضل إجابة Solved by رجب جاويش,

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

السلام عليكم

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

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

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

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

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

هل يمكن ذلك

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
رابط هذا التعليق
شارك

السلام عليكم

الاخوه الافاضل 

وجت الحل فى المنتدى

جزاكم الله خيرا

http://www.officena.net/ib/index.php?showtopic=48367

تم تعديل بواسطه ۩◊۩ أبو حنين ۩◊۩
رابط هذا التعليق
شارك

السلام عليكم

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

حاولت ان اضيف اضافه ان يغلف الملف بعد عدد 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 ss As Byte

واذا تكرمت برجاء شرج الكود للا ستفادة

جزاك الله كل الخير 

رابط هذا التعليق
شارك

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

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