محمود1980 قام بنشر الأحد at 23:53 قام بنشر الأحد at 23:53 الاخوة الاعضاء عندي جدول مكون من : الرقم - الاسم - العنوان - العمر طبعا لو تم عمل تصفية تلقائية ، سيتم اختيار الاسماء من خلال القائمة المنسدلة وتصفيتها ، ولكن في حال كانت البيانات كثيرة جدا وكنت ارغب مثلا باختيار 10 اسماء من عمود الاسماء الذي يحتوي مثلا 1000 اسم سيكون من الاسهل ان اكتبها في عمود اخر ومن ثم اطلب تصفية عمود الاسماء وفقا لهذا العمود السؤال هل استطيع كتابة العشر اسماء ومن ثم تصفيتها بالفلتر ( طبعا ستظهر فقط الاسماء الموجودة في عمود الاسم ) مرفق مثال عن المطلوب ,,,, مع الشكر لكم ولجهودكم Book111.xlsx
محمد هشام. قام بنشر بالامس في 01:15 قام بنشر بالامس في 01:15 وعليكم السلام ورحمة الله تعالى وبركاته جرب هدا هل يناسبك 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 1
محمود1980 قام بنشر بالامس في 11:25 الكاتب قام بنشر بالامس في 11:25 (معدل) السلام عليكم اخ محمد شكرا جزيلا لحضرتك هذا هو المطلوب بالفعل ، لكن لو اردت مثلا اختيار بلد معين من خلال التصفية ومن ثم كتابة الاسماء المطلوبة من البلاد التي قمت باختيارها فان التعليمات اعلاه تقوم بالغاء التصفية ثم اختيار الاسماء من كل الجدول هل يوجد حل لهذا الموضوع ايضا اخي الكريم لاحظت انه في حال تطبيق التعليمات اعلاه على عمود فيه ارقام بدل الاسماء فانه لا تتم التصفية هل يوجد حل لو تكرمت مع الشكر الجزيل تم تعديل بالامس في 13:00 بواسطه محمود1980
محمود1980 قام بنشر منذ 5 ساعات الكاتب قام بنشر منذ 5 ساعات السلام عليكم في 5/5/2025 at 14:25, محمود1980 said: ، لكن لو اردت مثلا اختيار بلد معين من خلال التصفية ومن ثم كتابة الاسماء المطلوبة من البلاد التي قمت باختيارها فان التعليمات اعلاه تقوم بالغاء التصفية ثم اختيار الاسماء من كل الجدول تم الحل من خلال الغاء السطر الذي يقوم بالغاء التصفية التلقائية If WS.AutoFilterMode Then WS.AutoFilterMode = False وبذلك يتم عمل التعليمات على حسب التصفية الحالية . باقي فقط في حال تطبيق التعليمات اعلاه على عمود فيه ارقام بدل الاسماء فانه لا تتم التصفية هل يوجد حل لو تكرمتم
عبدالله بشير عبدالله قام بنشر منذ 3 ساعات قام بنشر منذ 3 ساعات (معدل) وعليكم السلام ورحمة الله وبركاته بعد اذن استاذنا محمد هشام جرب التعديل التالي تفس الكود والتغديل في السطر 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 تم تعديل منذ 3 ساعات بواسطه عبدالله بشير عبدالله
hegazee قام بنشر منذ 1 ساعه قام بنشر منذ 1 ساعه السلام عليكم ورحمة الله و بركاته إضافة بسيطة لسهولة الاستخدام إستمكالا لما بدأه أساتذتي: أ/ هشام و أ/ عبدالله Book111.xlsm
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.