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

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

قام بنشر
  • لا يمكنك "إضافة" دالة FILTER الحديثة إلى Excel 2007.
  • يمكنك استخدام "التصفية التلقائية" و "التصفية المتقدمة" المدمجة في Excel 2007.
  • يمكن استخدام طرق أكثر تعقيدًا باستخدام صيغ المصفوفات القديمة، لكنها تتطلب معرفة متقدمة وتكون أقل سهولة في الاستخدام مقارنة بدالة FILTER.

لذا، أفضل الخيارات المتاحة لك في Excel 2007 هي التصفية التلقائية والتصفية المتقدمة.

قام بنشر

السلام عليكم ورحمه الله وبركاته

ممكن تسنخدم الكود التالي قد يفي بالغرض

Function MyFilter(LookInRange As Range, CriteriaRange As Range, CriteriaValue As Variant) As Variant
    Dim cell As Range
    Dim results() As Variant
    Dim count As Long
    Dim i As Long

    ReDim results(1 To CriteriaRange.Rows.Count, 1 To 1)
    count = 0

    For i = 1 To CriteriaRange.Rows.Count
        If CriteriaRange.Cells(i, 1).Value = CriteriaValue Then
            count = count + 1
            results(count, 1) = LookInRange.Cells(i, 1).Value
        End If
    Next i

    If count = 0 Then
        MyFilter = CVErr(xlErrNA)
    Else
        ReDim Preserve results(1 To count, 1 To 1)
        MyFilter = results
    End If
End Function
=MyFilter(A2:A10, B2:B10, "الرياض")

A2:A10  العمود الذي تريد إرجاع القيم منه (مثل الأسماء)

B2:B10 العمود الذي يحتوي على الشرط (مثل المدينة)

"الرياض" القيمة التي يتم التصفية بناءً عليها

 

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