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

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

قام بنشر

السلام عليكم

لدي خلية اكسل بها القيم التالية (  65,84,412,65,84,110)  ، و المطلوب حساب عدد الارقام و ليس مجموعها و المكرر يحسب مرة واحده فقط
يعني النتيجه =4

ملاحظة : يمكن وضع الارقام بصيغة نص
و شكراً

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

عفوا أخى بعد رؤية مرفق أستاذى الرائع وكودة الرائع ( رجب جاويش )

إتضح لى أن المعادلة ليست دقيقة بعد تجربتها لتعطى نفس نتيجة أستاذى ( رجب جاويش )

لذلك تم تعديل المرفق والأن أصبح كل شئ تمام

تقبل تحياتى

عدد الأرقام المفردة داخل خلية.rar

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

بالإضافة الى حل أخى الحبيب / محمود

هذا كود يقوم بعمل المطلوب

Sub ragab()
Range("B2:B1000").ClearContents
For x = 2 To [A1000].End(xlUp).Row
    For xx = 1 To UBound(Split(Cells(x, 1), ",")) + 1
        d = Split(Cells(x, 1), ",")(xx - 1)
        T = Application.WorksheetFunction.CountIf(Range(Cells(1, 30), Cells(xx, 30)), d)
        If T < 1 Then
            Cells(xx, 30) = d
            myCount = myCount + 1
        End If
    Next
    Cells(x, 2) = myCount
    Range(Cells(1, 30), Cells(xx, 30)) = ""
    myCount = 0
Next
End Sub

عدد الأرقام الفريدة.rar

قام بنشر

السلام عليكم

 

الشكر واصل لخي الجبيب جمال واخي الحبيب رجب ..........حفظهما الله

 

لاثراء الموضوع هذه دالة بالكود


Option Explicit

Function kh_vCont(iText) As Long
Dim Obj As Object, Tx
'''''''''''''''''''''''''''''
Set Obj = CreateObject("Scripting.Dictionary")
'''''''''''''''''''''''''''''
For Each Tx In Split(iText, ",")
    If Not Obj.Exists(Trim(Tx)) Then
        Obj.Add Trim(Tx), 1
    End If
Next
kh_vCont = Obj.Count
Set Obj = Nothing
End Function

المرفق 2003

دالة عدد الأرقام الفريدة في نص.rar

  • Like 2
قام بنشر

تمت التجربة و بصراحه  شئ رائع :rol:
اذا ماكنش فيه ازعاج ممكن نوسع الموضوع شوي و بدل من عد الارقام بخلية واحده نخليه يعد الارقام بجميع الخلايا و بنفس الشرط و هو عد الرقم المكرر مرة  واحده . طبعا اذا ماكنش فيه ازعاج ليكم
و مشكورين مرة ثانيه عالمجهود

  • أفضل إجابة
قام بنشر

attachicon.gifexample.rarالمطلوب ان يتم عد الارقام في الثلاث خلايا معاً مع عد المكرر مرة واحده.

او بالأحرى عد الارقام لشيت كامل

هذه الدالة تقوم بذلك

Option Explicit


Function kh_vCont11(Rng As Range) As Long
Dim Col As New Collection
Dim Tx, iText, v
'''''''''''''''''''''''''''''
On Error Resume Next
For Each v In Rng.Cells
    For Each Tx In Split(CStr(v), ",")
        Col.Add 1, Trim(Tx)
    Next
Next
kh_vCont11 = Col.Count
Set Col = Nothing
On Error GoTo 0
End Function

شاهد المرفق 2003

example++.rar

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information