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

حل مشكلة الاسماء المركبة في كود تقسيم الاسم في ثلاثة اعمدة


إذهب إلى أفضل إجابة Solved by احمد عبدالحليم,

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

الاخوة الكرام

السلام عليكم ورحمة الله

ارجو منكم مساعدتي في الملف المرفق حيث والمطلوب  فصل الاسم الأول في عمود واسم الاب والجد واي أسماء أخرى في عمود وفصل اللقب في عمود... مرفق لكم الملف الذي يحتوي على البيانات.

ولكم جزيل الشكر

تقسيم الاسم في ثلاثة اعمدة.xlsx

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

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

تقسيم الاسم في ثلاثة اعمدة.xlsm

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

شكرا لك اخي احمد هذا هو المطلوب ولكن تبقى مشكلة الاسماء المركبة ياريت حد يعمل حل للمشكلة 

ياريت اخي احمد تضيف الكود التالي الى الكود الموجود الذي عملته من اجل حل مشكلة الاسماء المركبة

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
  • Like 1
رابط هذا التعليق
شارك

الاخوة الكرام

اتمنى من له الخبرة في تعديل الكود الموجود في الملف المرفق بحيث يتم حل مشكلة الاسماء المركبة.

حيث والكود يقوم بتجزئة الاسم في ثلاثة اعمدة بحيث يكون الاسم الاول في عمود والاسماء التي بالوسط (اسم الاب والجد وغيرها بعمود لوحدها باستثناء اللقب الذي يكون في عمود ثالث لوحده)

ولكم جزيل الشكرتقسيم الاسم.xlsm

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

  • أفضل إجابة

تفضل اخى تم بحمد الله عمل المطلوب والتعديل على الدالة التى ارفقتها للحصول على النتائج المطلوبة 

واعذرنا على التأخير لكل منا مشاغله

ملاحظة يجب اضافة الاسم المركب الجديد فى الكود كما فى هذا الجزء 
 

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

بمعنى ان وجد مثلا اسم مثل نور الهدى احمد عبدالحليم فيجب على اضافة كلمة الهدى قبلها فراغ اى زر المسطرة قبل كلمة الهدى  الى هذه المصفوفة وهكذا مع باقى الاسماء المركبة الجديدة لتصبح هكذا 

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

جرب الملف واعلمنا بالنتيجة

تقبل تحياتى

تقسيم الاسم في ثلاثة اعمدة.xlsm

تم تعديل بواسطه احمد عبدالحليم
  • Like 2
رابط هذا التعليق
شارك

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

ما هو التعديل  على الكود الذي يقوم بتقسيم الاسم اذا كان رباعي 

اسم , سم الاب , اسم الجد , اسم العائلة  على اربعة اعمدة

بارك الله لكم و جزاكم كل خير 

تم تعديل بواسطه محمد عدنان
  • Like 1
رابط هذا التعليق
شارك

وعليكم السلام ورحمة الله وبركاته 
تفضل اخى تقسيم الاسم على اربعة اعمدة لاول اربعة اسماء

تقسيم الاسم الرباعى الى اربعة اسماء منفصلة.xlsm

  • Like 3
  • Thanks 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