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

ما هو الخطأ في هذا الكود ؟؟؟؟


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

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

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

اقوم بكتابة الرقم في تكست بوكس1 وتظهر نتيجة البحث في تكست بوكس2 وتكست بوكس3

ويعمل بشكل جيد ولكني احببت ان اضيف له جزء يقوم باعطائي رسالة

في حالة عدم وجود هذا الكود في القائمة المحددة بان هذا الرقم غير موجود

ولكن يحث معي خطأ ما !!!!1

فما هو الخطأ في هذا الكود

Private Sub TextBox1_Change()
Set sh12 = Sheets("Sheet1")
LR = sh12.[G20000].End(xlUp).Row
For Each cl In sh12.Range("G2:I" & LR)
If (Val(Me.TextBox1)) = cl Then
Me.TextBox2 = cl.Offset(0, 1)
Me.TextBox3 = cl.Offset(0, 2)
Else
  MsgBox "لاتوجد نتائج للبحث", vbMsgBoxRight, "عفوا"

End If
Next

End Sub

اظن ان الخطأ في الجزء .. ولكني لا اعلم اين


Else
  MsgBox "لاتوجد نتائج للبحث", vbMsgBoxRight, "عفوا"

في انتظار ردودكم اساتذتي

 

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

الاستاذ الكريم / سليم حاصبيا

بالنسبة لـ  sh12  

فقد قمت في بداية الكود بجعل sh12 تساوي الشيت 1

Set sh12 = Sheets("Sheet1")

وبالتالي لا اجد مشكلة من رقم 12 او غيره

وللعلم استاذنا الفاضل ... الكود يعمل حتي كلمة else  بشكل اكثر من راائع وقبل اضافتها كان لايوجد اي مشاكل

ولكن بعدما احتجت الي ظهور رسالة تفيد بعدم وجود الرقم عند البحث في القائمة المحددة واضفت else والـ msgbox

ظهرت المشكلة

في انتظار ردودكم

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

اليك الملف بالمرفقات

فالكود يعمل بشكل جيد وطبيعي دون اضافة الرسالة

ولكني كل ما اريده انه في حالة كتابة رقم غير الموجود في عمود البحث

يعطي رسالة تحذيرية تفيد بأن هذا الرقم غير موجود ... ولا اعلم الطريقة

 

وبتشغيل الرسالة كما هي وبدون اقواس تعمل ولكنها تظهر دائما ولا تختفي وتصبح حلقة تكرارية مستمرة

 

ارجو ان اكون قد اوضحت طلبي

 

في انتظار ردودكم

 

كود بحث.rar

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

  • أفضل إجابة

السلام عليكم

بعد اذن أخى الفاضل / سليم

 

أخى الفاضل

جرب التعديل التالى

Private Sub TextBox1_Change()
Dim b As Boolean
Me.TextBox2 = ""
Me.TextBox3 = ""
Set sh12 = Sheets("Sheet1")
LR = sh12.[G20000].End(xlUp).Row
If Me.TextBox1 = "" Then Exit Sub
For Each cl In sh12.Range("G2:G" & LR)
If (Val(Me.TextBox1)) = cl Then
b = True
Me.TextBox2 = cl.Offset(0, 1)
Me.TextBox3 = cl.Offset(0, 2)
Exit For
End If
Next
If Not b Then
  MsgBox "لاتوجد نتائج للبحث", vbMsgBoxRight, "عفوا"
End If
End Sub
  • Like 2
رابط هذا التعليق
شارك

أخى فى الله

أستاذى القدير // رجب جاويش

بارك الله فيكم

دائما سباق لعمل الخير 

نسأل الله لكم أن يحفظكم من شرور خلقه بسر حفظه لكتابه الحكيم

تقبل منى وافر الاحترام والتقدير

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

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