محمود1980 قام بنشر مايو 4 قام بنشر مايو 4 الاخوة الاعضاء عندي جدول مكون من : الرقم - الاسم - العنوان - العمر طبعا لو تم عمل تصفية تلقائية ، سيتم اختيار الاسماء من خلال القائمة المنسدلة وتصفيتها ، ولكن في حال كانت البيانات كثيرة جدا وكنت ارغب مثلا باختيار 10 اسماء من عمود الاسماء الذي يحتوي مثلا 1000 اسم سيكون من الاسهل ان اكتبها في عمود اخر ومن ثم اطلب تصفية عمود الاسماء وفقا لهذا العمود السؤال هل استطيع كتابة العشر اسماء ومن ثم تصفيتها بالفلتر ( طبعا ستظهر فقط الاسماء الموجودة في عمود الاسم ) مرفق مثال عن المطلوب ,,,, مع الشكر لكم ولجهودكم Book111.xlsx
محمد هشام. قام بنشر مايو 5 قام بنشر مايو 5 وعليكم السلام ورحمة الله تعالى وبركاته جرب هدا هل يناسبك Option Explicit Sub FilterByNames() Dim WS As Worksheet, arr(), i&, n&, filterRange As Range Set WS = Sheets("Sheet1") If WS.AutoFilterMode Then WS.AutoFilterMode = False n = WS.Cells(WS.Rows.Count, "I").End(xlUp).Row If n < 2 Then Exit Sub ReDim arr(1 To n - 1) For i = 2 To n arr(i - 1) = WS.Cells(i, "I").Value Next i Set filterRange = WS.Range("B6").CurrentRegion With filterRange .AutoFilter Field:=2, Criteria1:=arr, Operator:=xlFilterValues End With End Sub 3
محمود1980 قام بنشر مايو 5 الكاتب قام بنشر مايو 5 (معدل) السلام عليكم اخ محمد شكرا جزيلا لحضرتك هذا هو المطلوب بالفعل ، لكن لو اردت مثلا اختيار بلد معين من خلال التصفية ومن ثم كتابة الاسماء المطلوبة من البلاد التي قمت باختيارها فان التعليمات اعلاه تقوم بالغاء التصفية ثم اختيار الاسماء من كل الجدول هل يوجد حل لهذا الموضوع ايضا اخي الكريم لاحظت انه في حال تطبيق التعليمات اعلاه على عمود فيه ارقام بدل الاسماء فانه لا تتم التصفية هل يوجد حل لو تكرمت مع الشكر الجزيل تم تعديل مايو 5 بواسطه محمود1980
محمود1980 قام بنشر مايو 6 الكاتب قام بنشر مايو 6 السلام عليكم في 5/5/2025 at 14:25, محمود1980 said: ، لكن لو اردت مثلا اختيار بلد معين من خلال التصفية ومن ثم كتابة الاسماء المطلوبة من البلاد التي قمت باختيارها فان التعليمات اعلاه تقوم بالغاء التصفية ثم اختيار الاسماء من كل الجدول تم الحل من خلال الغاء السطر الذي يقوم بالغاء التصفية التلقائية If WS.AutoFilterMode Then WS.AutoFilterMode = False وبذلك يتم عمل التعليمات على حسب التصفية الحالية . باقي فقط في حال تطبيق التعليمات اعلاه على عمود فيه ارقام بدل الاسماء فانه لا تتم التصفية هل يوجد حل لو تكرمتم
عبدالله بشير عبدالله قام بنشر مايو 6 قام بنشر مايو 6 (معدل) وعليكم السلام ورحمة الله وبركاته بعد اذن استاذنا محمد هشام جرب التعديل التالي تفس الكود والتغديل في السطر arr(i - 1) = WS.Cells(i, "I").Value بالسطر arr(i - 1) = CStr(WS.Cells(i, "I").Value) الكود كاملا Option Explicit Sub FilterByNames() Dim WS As Worksheet, arr(), i&, n&, filterRange As Range Set WS = Sheets("Sheet1") If WS.AutoFilterMode Then WS.AutoFilterMode = False n = WS.Cells(WS.Rows.Count, "I").End(xlUp).Row If n < 2 Then Exit Sub ReDim arr(1 To n - 1) For i = 2 To n arr(i - 1) = CStr(WS.Cells(i, "I").Value) Next i Set filterRange = WS.Range("B6").CurrentRegion With filterRange .AutoFilter Field:=2, Criteria1:=arr, Operator:=xlFilterValues End With End Sub تم تعديل مايو 6 بواسطه عبدالله بشير عبدالله 2
hegazee قام بنشر مايو 6 قام بنشر مايو 6 السلام عليكم ورحمة الله و بركاته إضافة بسيطة لسهولة الاستخدام إستمكالا لما بدأه أساتذتي: أ/ هشام و أ/ عبدالله Book111.xlsm 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.