اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

مولد الأرقام السرية أو Password generator


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

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

 

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

ده لما ربنا يكرمك وتعمل شركة سوفت وير أو محمول  قل إن شاء الله


:wink2:

 

باختصار جُل أمور حياتنا وأعمالنا وأشغالنا كلها بقت بباسورد إما يكون بسيط أو معقد

وكلاهما قابل للكسر  يعنى مفيش مفر  من أخى وأستاذى ياسر خليل

 

لكن الشركات  دى  بتعمل سريال نمبر ازاى لكل مستخدم  ؟

 

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

Sub Passwordgenerator()

Do  'أمربمعنى افعل
' شرط بمعنى لو كانت الخلية التى بجانب الخلية النشطة مملوءة
If ActiveCell.Offset(0, -1) <> "" Then
'ضع  المعادلة التالية فى الخلية النشطة
ActiveCell.Formula = Chr(Int((26 * Rnd) + 97)) & Format(Int(100000 * Rnd), "00000")
'الانتقال الى الخلايا التالية للخلية النشطة
ActiveCell.Offset(1, 0).Select

Else  'أيضا لو لم تكن الخلية التى بجانب الخلية النشطة مملوءة

Exit Sub  'اخرج من الاجراء

End If  'انتهاء جملة الشرط

Loop   'استمر

End Sub

الكود وظيفته توليد سريال حرف عشوائى + رقم عشوائى  وأهم ما فيه السطر العبقرى ده :

ActiveCell.Formula = Chr(Int((26 * Rnd) + 97)) & Format(Int(100000 * Rnd), "00000")

الشرح  :  

 

Chr    دالة النصوص CHAR تعطى حرف عشوائى مساوى لرقم معين
Int دالة تقريب لأقرب عدد صحيح


26  عدد حروف اللغة الانجليزية


Rnd دالة تعطى رقم عشوائى


97 لجعل الحرف الناتج يكون صغير صمول
65 لجعل الحرف الناتج يكون كبير كبتل

 

اشمعنى الرقم  97 والرقم 65
الرقم 65 يساوى  A  أول حرف كبتل فى اللغة الانجليزية

الرقم 66 يساوى  B  ثانى حرف كبتل فى اللغة الانجليزية  وهكذا


الرقم 97 يساوى  a  أول حرف صمول فى اللغة الانجليزية

الرقم 97 يساوى  b  ثانى حرف صمول فى اللغة الانجليزية  وهكذا

أعتقد أن الفكرة زادت وضوحا


Format(Int(100000 * Rnd), "00000 "
هنا نتحكم فى عدد الأرقام التى تلى الحرف العشوائى  4 أو 5 أو 6 ...الخ

ببساطة جرب تغيير الأصفار فى الشقين بالزيادة والنقصان

 

ولو الشركة عايزه تحبكها شوية بتعمل ايه ؟ بتغير فى السطر العبقرى تضيف عليه معادلة أخرى مماثلة أو مختلفة مثل :

ActiveCell.Formula = Chr(Int((26 * Rnd) + 65)) & Format(Int(100000 * Rnd), "00000") & Chr(Int((26 * Rnd) + 97)) & Format(Int(100000 * Rnd), "00000")

أو زى كده :

ActiveCell.Formula = Chr(Int((26 * Rnd) + 65)) & Format(Int(100000 * Rnd), "00000") & Chr(Int((26 * Rnd) + 97)) & Format(Int(100000 * Rnd), "00000") & Chr(Int((26 * Rnd) + 65)) & Format(Int(100000 * Rnd), "00000")

ولو الشركة عايزه تحبكها شويتين بتعمل ايه ؟ بتغير فى السطر العبقرى وتعمل سريال مجموعات مجموعات  مثل :

ActiveCell.Formula = Chr(Int((26 * Rnd) + 65)) & Format(Int(1000 * Rnd), "000") & " - " & Chr(Int((26 * Rnd) + 97)) & Format(Int(1000 * Rnd), "000") & " - " & Chr(Int((26 * Rnd) + 65)) & Format(Int(1000 * Rnd), "000") & " - " & Chr(Int((26 * Rnd) + 97)) & Format(Int(1000 * Rnd), "000")

ولو الشركة عايزه تعمل سريال مخصوص لأوفيسنا بتعمل ايه ؟ بتغير فى السطر العبقرى وتعمل سريال مجموعات مجموعات  وتضع اسم أوفيسنا فيهم زى كده :

ActiveCell.Formula = Chr(Int((26 * Rnd) + 65)) & Format(Int(1000 * Rnd), "000") & " - " & Chr(Int((26 * Rnd) + 97)) & Format(Int(1000 * Rnd), "000") & " - " & "officena" & " - " & Chr(Int((26 * Rnd) + 97)) & Format(Int(1000 * Rnd), "000") & " - " & Chr(Int((26 * Rnd) + 65)) & Format(Int(1000 * Rnd), "000")

ملحوظة : الكود الأصلى  هو المذكور فى  بداية الموضوع وهو منقول من مشاركة فى أحد المنتديات الأجنبية
 

أما ما تلاه من أكواد فى ثنايا الشرح  هى من وحى الخيال ويمكنك أن تعيد تشكيل السطر العبقرى بالتعديل والاضافة كما تشاء


مين بقى هيتفاعل مع الموضوع ويقدم لنا شكل جديد للكود ؟


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

:fff: :fff: :fff:

Password generator.rar

تم تعديل بواسطه مختار حسين محمود
  • Like 2
رابط هذا التعليق
شارك

عوداً حميداً أخي الحبيب مختار

ونرجو لك مزيد من التوفيق والتميز

لا حرمنا الله من روائعك

تقبل تحياتي

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

أخى وأستاذى الفاضل ياسر خليل بارك الله فيكم

 

أخى المهندس الفاضل ياسر فتحى بارك الله فيكم

 

أخى الفاضل أحمد الرشيدى بارك الله فيكم  وفى مروركم الكريم

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

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