اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

سؤال عن كود لفرز محتويات عمود


إذهب إلى أفضل إجابة Solved by ياسر خليل أبو البراء,

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

السلام عليكم
لدي عمود واحد  فيه أسماء ثلاثية ( الإسم و اسم الأب والشهرة ) وأسماء ثنائية (الإسم والشهرة )
أريد نص برمجي يقوم بعزل الأسماء التي لايوجد فيها اسم الاب عن الأسماء التي يوجد فيها اسم الأب
وشكرا

رابط هذا التعليق
شارك

شكرا لتواصلك
في الملف يوجد مثال عن الذي اريده
العمود الاول موجود فيه الأسما مع اسم االأب
العمود الثاني الأسماء بدون اسم الأب ( بعد الفرز )
لم يمكنني المستعرض من رفع الملف
هذه صورة مرفقة
 

post-147475-0-34795500-1435530771_thumb.

رابط هذا التعليق
شارك

شكرا لتواصلك

في الملف يوجد مثال عن الذي اريده

العمود الاول موجود فيه الأسما مع اسم االأب

العمود الثاني الأسماء بدون اسم الأب ( بعد الفرز )

لم يمكنني المستعرض من رفع الملف

هذه صورة مرفقة

 

طبعا اسماء الشهرة غير متشابهة والملف اكبر من الذي ارسلته في الصورة

رابط هذا التعليق
شارك

أفهم من الصورة أنك تريد استثناء الأسماء الثنائية أي استخراجها في عمود منفصل ...

الملف المرفق سيسهل العمل والمساعدة .. اتعب شوية وارفق بعض الأسماء للعمل عليها لا يشترط كل الأسماء .. يكفي كما في الصورة المرفقة

اضغط الملف ثم قم برفعه

رابط هذا التعليق
شارك

  • أفضل إجابة

أخي الكريم فراس

إليك الكود التالي عله يفي بالغرض إن شاء المولى

Sub ExtractTwoNames()
'يقوم الكود باستخراج الأسماء الفردية و الثنائية ويضع النتائج في العمود الثاني
'----------------------------------------------------------------------------
    Dim Rng As Range, Cell As Range
    Dim lRow As Long

    Set Rng = Range("A2:A" & Cells(Rows.Count, 1).End(3).Row)
    lRow = 2

    Application.ScreenUpdating = False
        For Each Cell In Rng
            If kh_Names(Trim(Cell.Value), 1) = Trim(Cell.Value) Or kh_Names(Trim(Cell.Value), 1, 2) = Trim(Cell.Value) Then Cells(lRow, 2) = Trim(Cell): lRow = lRow + 1
        Next Cell
    Application.ScreenUpdating = True
End Sub

Function kh_Names(FullName As String, ParamArray iNdex1()) As String
    Dim I As Integer
    Dim kh_Split, MyArray, Ar
    Dim Kh_String As String, Sn As String, Re As String

    On Error GoTo Err_Kh_Names

    MyArray = Array("عبد ", "أبو ", "ابو ", "آل ", " الله", " الدين", " الإسلام", " الاسلام", " الحق", " النصر", " العهد", " النور", " بالله")

    Sn = Application.WorksheetFunction.Trim(FullName)
    For Each Ar In MyArray
        Re = Replace(Ar, " ", "^")
        Sn = Replace(Sn, Ar, Re)
    Next

    kh_Split = Split(Sn, " ", , vbTextCompare)

    On Error Resume Next
    For I = 0 To UBound(iNdex1)
        Kh_String = Kh_String & " " & kh_Split(iNdex1(I) - 1)
    Next
    On Error GoTo 0

    Kh_String = Replace(Trim(Kh_String), "^", " ")
    kh_Names = Kh_String

    Exit Function

Err_Kh_Names:
    kh_Names = ""
End Function

تقبل تحياتي  :fff: :fff:

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

 

Extract Single & Double Names YasserKhalil.rar

رابط هذا التعليق
شارك

جزاك الله كل خير
أليس من المفروض أن يعمل الكود لوحده في العمود الثاني؟
ماذا يجب أن أفعل بعد أن اقوم بفتح الملف المرفق؟
المفروض أنه يقوم بالفرز بشكل تلقائي ...لكنه لم يقم بذلك
هل يجب أن افعل شي؟
شكرا لك على وقتك
 

رابط هذا التعليق
شارك

أخي الكريم الكود لا يعمل بشكل تلقائي يجب الضغط على زر الامر .. قم بكتابة الأسماء لديك كلها في العمود الاول ثم اضغط الزر

ألم ترى أن هناك زر مكتوب عليه قل : سبحان الله والحمد لله ولا إله إلا الله والله أكبر .. اضغط على الزر بعد ما تقول الذكر هتلاقي النتائج كما طلبت

إذا لم تكن ممكن الماكرو يجب عليك مشاهدة الفيديو التالي

 

  • 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