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

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

قام بنشر

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

ارغب البحث في جدول عن طريق اليوزرفورم

بحيث التكست  بوكس الاول يحتوى على قيمة الشرط

والتكست بوكس الثاني يحتوي على القيمة المراد البحث عنها

والتكست بوكس الثالث تظهر فيه نتيجة البحث

في الشيت يتم البحث باستخدام الداله vlookup والداله match

ولكنني ارغب البحث بنفس الاسلوب في اليوزرفورم

مرفق ملف مثال

السلام عليكم لتوضيح الموضوع 

البحث في الشيت بمعيارين المعيار الاول قيمة من المجال من الخلية a2 الى ac29

المعيار الثاني تكون القيمة من الصف الافقي من a1 الى ac1

في الشيت استخدم هذه الصيغة

=IF(D4=3;VLOOKUP(D5;tabl1;MATCH(D6;tabl2;0);0))

  واحتاج لصيغة مماثلة استخدمها في اليوزر فورم

البحث في جدول.xlsx

قام بنشر (معدل)

السلام عليكم

بإمكانك إستخدام التالي بدلاً عن الاول بحيث يسهل فهم المعادلات المستخدمة

Private Sub TextBox1_Change()
Ali_S
End Sub
Private Sub TextBox2_Change()
Ali_S
End Sub
Private Sub TextBox3_Change()
Ali_S
End Sub
Sub Ali_S()
If TextBox1 <> "" And TextBox2 <> "" And TextBox3 <> "" Then
If TextBox1 = 3 Then
     TextBox4 = Se(Range("tabl1"), TextBox2, Range("tabl2"), TextBox3)
End If
End If
End Sub
Function Se(Tb1 As Range, V1 As Integer, Tb2 As Range, V2 As Integer)
Dim M1, M2
On Error Resume Next
With WorksheetFunction
    ' بحث بالعمود الاول للجدول1
    ' لارجاع رقم الصف
    M1 = .Match(V1, Tb1.Columns(1), 0)
    ' بحث الجدول2 لارجاع رقم العمود
    M2 = .Match(V2, Tb2, 0)
    ' دالة Index ' لارجاع قيمة تقاطع صف مع عمود معين
    Se = .Index(Tb1, M1, M2)
End With
On Error GoTo 0
End Function

 

البحث في جدول2.xlsm

تم تعديل بواسطه الـعيدروس
  • Like 3
قام بنشر

السلام عليكم 

الكود رائع من الاخ  العيدروس وكان هو المطلوب

وجربته على كذا مصنف ويعمل بكفاءه ولكن يحتاج فتح المصنف المراد البحث فيه

هل استطيع البحث  في ملف اخرى بدون فتح الملف

  • 2 weeks later...
قام بنشر

الملف المرفق يحتوي على كود بحث عن قيمة في جدول عن طريق اليوزرفورم

والبحث هنا يكون في جدول في نفس الملف ولكن ارغب في البحث في جداول اخرى

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

البحث في جدول2 (1).xlsm

قام بنشر

بارك الله فيك اخ العيدروس نفس الكود اللي عملته انت مشكور ولكن ابيه يبحث في مصنف اخر وليس المصنف المفتوح

مرفق مثال لملفين مصنف 1 ويوجد به الكود والمصنف 2 وبه جدول وهو مثال فقط  

مصنف 2.xlsb مصنف 1.xlsm

قام بنشر (معدل)

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

في الكود السابق الذي تفضلت به 

strFileName = ThisWorkbook.Path & "\ tabl_ntq .xlsb"

هذا الجزء كان يبحث في الملف المحدد ولكنه لايعمل الا اذا كان الملف "المصنف" مفتوح وارغب 

 

ان يتم البحث بدون فتح الملف او ظهور في حالة انني اردت اخفاء الاكسل والعمل من اليوزرفورم فقط

ساحاول فهم الكود لعلي استطيع استخدامه بالشكل الذي ارغب فيه

تم تعديل بواسطه srs900
قام بنشر

السلام عليكم

حط معطياتك الاساسية في بداية الكود وجرب

' حط هنا مسار الملف الاساسي
Private Const Pth As String = "C:\Users\user\Desktop\My_Book.xlsx"
' حط هنا اسم الورقة في الملف الاساسي
Private Const Name_Sheet As String = "Sheet1"

 

البحث في جدول4 .xlsm

قام بنشر

استخدم هذا المرفق

اخفي الملف وحطه في أي موقع بالجهاز

  وحدد مساره بالكود وحدد اسم الورقة فقط

طريقة البحث وجلب القيمة نفس طلبك السابق

واذا تريد تغير صيغة البحث بالامكان تطويع الكود لأي حاله تريد

البحث في جدول5 .xlsm

  • 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