JavaScript is not enabled!...Please enable javascript in your browser

جافا سكريبت غير ممكن! ... الرجاء تفعيل الجافا سكريبت في متصفحك.

-->
Home

اكسل vba تحديد نوع البيانات المدخلة فىTEXTBOX و الحد الأقصى لمحتويات صندوق النص UserForm

اكسل vba تحديد نوع البيانات المدخلة فىTEXTBOX و الحد الأقصى لمحتويات الخلية UserForm
بسم الله الرحمن الرحيم
اهلا بحضراتكم متابعى موقع ومدونة عالم الاوفيس
سؤال ورد الينا من احد الاصدقاء المتابعين 
كيف اقول باجبار المستخدم على ادخال عدد معين من الارقام وليكن 11 رقم فقط لاغير فى textbox؟
وللاجابة على هذا السؤال سنقوم بتنفيذ كود اكسل vba
ليقوم بهذة المهمة بالنيابة عنكم 
اذا كيف نقوم بذلك .
فى البداية لابد لنا من ايجاد دالة معينة تقوم بحساب عدد الارقام المدخلة فى التكست بوكس حتى يتم عمل المعادلة اللازمة لمنع المستخدم من ادخال ارقام اكثر من العدد المطلوب (11 رقم )  وهنا سوف نستخدم الدالة (LEN)
وسيكون شكل الكود كالاتى 

If Len(Me.TextBox1.Value) > 11 Then
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" 
.Value = vbNullString

لمعرفة كيفية عمل الكود يرجى متابعة شرح الفيديو

 
Comments
  • RMT photo
    RMTAugust 17, 2019 at 1:33 PM

    السلام عليكم
    بارك الله فيك اخ عماد , شرح روعه كما عهدناك .
    اخي الكريم يا ريت ترفع الملف على موقع اخر , لان الموقع الحالي يحولك دائما الى مواقع دعائيه اخرى مع العلم اني حاولت كثيرا ولم افلح في تحميل الملف .
    شكرا

    Post a CommentDelete Comment
    • magedo photo
      magedoAugust 18, 2019 at 2:13 PM

      السلام عليكم جزاك الله خيرا يا استاذ عماد بس يا ريت ما تتعبش الناس فى تحميل الملفات فعلا الصفحات بتفتح كتير وما حدش بيحمل فيا ريت تسهل للناس ربنا يسهل عليك وجزاك الله خيرا على الافاده

      Post a CommentDelete Comment
      • HOME NEEDS photo
        HOME NEEDSNovember 19, 2021 at 9:57 AM

        عندك حق الموضوع صعب جدا لو الروابط مش موجودة يبقى افضل

        Delete Comment
      • Medhat photo
        MedhatOctober 5, 2019 at 1:20 PM

        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
        ولحضرتك جزيل الشكر

        Post a CommentDelete Comment
        • احمد رميح photo
          احمد رميحApril 24, 2021 at 7:20 PM

          عاوز كود يكتب التاريخ فى التكست بوك بالطريقه يوم شهر سنه
          بدلا من سنه شهر يوم

          Post a CommentDelete Comment
          • احمد رميح photo
            احمد رميحApril 24, 2021 at 7:23 PM

            انا عملت كود لاضافة صورة الموظف الى فولدر فى الجهاز
            لكن عند البحث عن بياناته بالاضافه الى الصور
            تظهر البيانات بدون الصوره
            ممكن حد يقولى اذاى
            الصوره فى image
            والفولدر e على الجهاز
            عاوز عند البحث عن بيانات الموظف تظهر الصوره
            العمل فورم وليس نموذج فى الشيت

            Post a CommentDelete Comment
            • ahmed photo
              ahmedJune 30, 2021 at 2:17 AM

              المطلوب كود ادخال التاريخ في التكس بوكس

              Post a CommentDelete Comment
              NameEmailMessage