اكسل vba تحديد نوع البيانات المدخلة فىTEXTBOX و الحد الأقصى لمحتويات الخلية UserForm
بسم الله الرحمن الرحيم
اهلا بحضراتكم متابعى موقع ومدونة عالم الاوفيس
سؤال ورد الينا من احد الاصدقاء المتابعين
كيف اقول باجبار المستخدم على ادخال عدد معين من الارقام وليكن 11 رقم فقط لاغير فى textbox؟
وللاجابة على هذا السؤال سنقوم بتنفيذ كود اكسل vba
ليقوم بهذة المهمة بالنيابة عنكم
اذا كيف نقوم بذلك .
فى البداية لابد لنا من ايجاد دالة معينة تقوم بحساب عدد الارقام المدخلة فى التكست بوكس حتى يتم عمل المعادلة اللازمة لمنع المستخدم من ادخال ارقام اكثر من العدد المطلوب (11 رقم ) وهنا سوف نستخدم الدالة (LEN)
وسيكون شكل الكود كالاتى
بسم الله الرحمن الرحيم
اهلا بحضراتكم متابعى موقع ومدونة عالم الاوفيس
سؤال ورد الينا من احد الاصدقاء المتابعين
كيف اقول باجبار المستخدم على ادخال عدد معين من الارقام وليكن 11 رقم فقط لاغير فى textbox؟
وللاجابة على هذا السؤال سنقوم بتنفيذ كود اكسل vba
ليقوم بهذة المهمة بالنيابة عنكم
اذا كيف نقوم بذلك .
فى البداية لابد لنا من ايجاد دالة معينة تقوم بحساب عدد الارقام المدخلة فى التكست بوكس حتى يتم عمل المعادلة اللازمة لمنع المستخدم من ادخال ارقام اكثر من العدد المطلوب (11 رقم ) وهنا سوف نستخدم الدالة (LEN)
وسيكون شكل الكود كالاتى
If Len(Me.TextBox1.Value) > 11 Then
MsgBox "number mustbe8 digits"
Me.TextBox1 = ""
End If
MsgBox "number mustbe8 digits"
Me.TextBox1 = ""
End If
وبذلك يكون الكود يعمل انة فى حالة ادخال اكثر من 11 character ولكن هناك مشكلة اذا قومنا بادخال حرف او نص او مسافة سوف تقوم الدالة (LEN) باحتساب 11 موضع فقط لاغير بغض النظر عن كونة رقم او نص اوغير ذلك وهذا سيسبب مشكلة كبيرة فى دقة النتائج
كيف نتغلب على هذة المشكلة من خلال اضافة كود اخر يقوم باختبار محتويات الخلية اذا كانت نص او اى شئ غير الارقام لن يقبل الادخال
With TextBox1
If Not IsNumeric(.Value) And .Value <> vbNullString Then
MsgBox "sorry,only number allowed"
If Not IsNumeric(.Value) And .Value <> vbNullString Then
MsgBox "sorry,only number allowed"
.Value = vbNullString
لمعرفة كيفية عمل الكود يرجى متابعة شرح الفيديو
السلام عليكم
ردحذفبارك الله فيك اخ عماد , شرح روعه كما عهدناك .
اخي الكريم يا ريت ترفع الملف على موقع اخر , لان الموقع الحالي يحولك دائما الى مواقع دعائيه اخرى مع العلم اني حاولت كثيرا ولم افلح في تحميل الملف .
شكرا
السلام عليكم جزاك الله خيرا يا استاذ عماد بس يا ريت ما تتعبش الناس فى تحميل الملفات فعلا الصفحات بتفتح كتير وما حدش بيحمل فيا ريت تسهل للناس ربنا يسهل عليك وجزاك الله خيرا على الافاده
ردحذفعندك حق الموضوع صعب جدا لو الروابط مش موجودة يبقى افضل
حذفPrivate Sub TextBox6_Change()
ردحذفSheets(1).Activate
Range("A2").End(xlDown).Select
TextBox9.Value = ActiveCell.Value
CommandButton7.Enabled = True
CommandButton3.Enabled = False
CommandButton10.Enabled = False
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""
TextBox5.Value = ""
TextBox7.Value = ""
TextBox8.Value = ""
lr = WorksheetFunction.CountIf(Range("A2:U3000"), Val(TextBox6.Value))
If TextBox6.Value <> "" Then
TextBox1.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 2, 0)
TextBox2.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 3, 0)
TextBox3.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 4, 0)
TextBox4.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 5, 0)
TextBox5.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 6, 0)
TextBox7.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 19, 0)
TextBox8.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 20, 0)
TextBox40.Value = WorksheetFunction.VLookup(Val(TextBox6.Value), Range("A2:U3000"), 21, 0)
End If
CommandButton3.Enabled = False
CommandButton7.Enabled = True
CommandButton10.Enabled = True
End Sub
لو سمحت يا أستاذ عماد
ده كود شغال تمام
لكن أنا أضفت مربع نص يجيب رقم آخر عميل
عايز أضيف كود يقول للمستخدم لو كتب رقم أكبر من كود آخر عميل يعطيه رسالة وما يدخلش على سطر الدالة vlookup
ولحضرتك جزيل الشكر
عاوز كود يكتب التاريخ فى التكست بوك بالطريقه يوم شهر سنه
ردحذفبدلا من سنه شهر يوم
انا عملت كود لاضافة صورة الموظف الى فولدر فى الجهاز
ردحذفلكن عند البحث عن بياناته بالاضافه الى الصور
تظهر البيانات بدون الصوره
ممكن حد يقولى اذاى
الصوره فى image
والفولدر e على الجهاز
عاوز عند البحث عن بيانات الموظف تظهر الصوره
العمل فورم وليس نموذج فى الشيت
المطلوب كود ادخال التاريخ في التكس بوكس
ردحذف