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

معرفه الفرق بين اسمين ويظهر الفرق


إذهب إلى أفضل إجابة Solved by Saleh Ahmed Rabie,

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

**إليك معادلة  لحساب الفرق بين الاسمين في الخلية C3، مع اعتبار الاسم في الخلية A3 هو الأساس:

=IF(A3=B3,"",A3&" "&"مختلف عن"&" "&B3)

**مثال:

إذا كان الاسم في الخلية A3 هو "محمد خالد" والاسم في الخلية B3 هو "محمد حالد"، فستكون المعادلة في الخلية C3 كما يلي:

=IF(A3=B3,"",A3&" "&"مختلف عن"&" "&B3)
="محمد خالد" "&"مختلف عن"&" "&"محمد حالد"
="محمد خالد مختلف عن محمد حالد"

**النتيجة:**

ستظهر المعادلة الفرق بين الاسمين في الخلية C3، وهو "محمد خالد مختلف عن محمد حالد".

**ملاحظة:**

* إذا كان الاسمان متطابقين، فستكون نتيجة المعادلة سلسلة فارغة ("").
* يمكنك تخصيص نص الرسالة التي تظهر في حالة اختلاف الاسمين.

**إليك معادلة لحساب الفرق بين الاسمين في الخلية C3، مع إظهار الحرف الذي يختلف فيه الاسمان:


=IFERROR(MID(A3,MATCH(FALSE,A3=B3,0)+1,1),"")

**مثال:**

إذا كان الاسم في الخلية A3 هو "محمد خالد" والاسم في الخلية B3 هو "محمد حالد"، فستكون المعادلة في الخلية C3 كما يلي:

=IFERROR(MID(A3,MATCH(FALSE,A3=B3,0)+1,1),"")
=MID("محمد خالد",MATCH(FALSE,"محمد خالد"="محمد حالد",0)+1,1)
=MID("محمد خالد",7,1)
="د"

**النتيجة:**

ستظهر المعادلة الحرف الذي يختلف فيه الاسمان في الخلية C3، وهو "د".

**ملاحظة:**

* إذا كان الاسمان متطابقين، فستكون نتيجة المعادلة سلسلة فارغة ("").
* يمكنك تخصيص نص الرسالة التي تظهر في حالة تطابق الاسمين.

** ويمكنك الاستعانة بكود VBA لإيجاد الفرق بين الاسمين في الخليتين A3 وB3 وإظهار الحرف الذي يختلف فيه الاسمان في الخلية C3:

Sub FindDifference()
    Dim strName1 As String
    Dim strName2 As String
    Dim intDiffPos As Integer

    ' الحصول على الاسمين من الخليتين A3 وB3
    strName1 = Range("A3").Value
    strName2 = Range("B3").Value

    ' إيجاد موضع الحرف المختلف
    intDiffPos = FindDifferencePos(strName1, strName2)

    ' إظهار الحرف المختلف في الخلية C3
    If intDiffPos > 0 Then
        Range("C3").Value = Mid(strName1, intDiffPos, 1)
    Else
        Range("C3").Value = "لا يوجد اختلاف"
    End If
End Sub

' دالة لإيجاد موضع الحرف المختلف بين سلسلتين
Function FindDifferencePos(strName1 As String, strName2 As String) As Integer
    Dim intPos As Integer

    ' مقارنة السلسلتين حرفًا بحرف
    For intPos = 1 To Len(strName1)
        If Mid(strName1, intPos, 1) <> Mid(strName2, intPos, 1) Then
            ' تم العثور على الحرف المختلف
            FindDifferencePos = intPos
            Exit For
        End If
    Next intPos

    ' لم يتم العثور على أي اختلاف
    If intPos > Len(strName1) Then
        FindDifferencePos = 0
    End If
End Function

**ملاحظة:

* ضع كود VBA هذا في وحدة نمطية في دفتر العمل الخاص بك.
* قم بتشغيل الكود بالنقر فوق الزر "تشغيل" في علامة التبويب "المطور".

** كود اخر  لإيجاد الفرق بين الاسمين في الخليتين A3 وB3 وإظهار اسم الحرف الذي يختلف فيه الاسمان في الخلية C3:

Sub FindDifference()
    Dim strName1 As String
    Dim strName2 As String
    Dim intDiffPos As Integer
    Dim strDiffChar As String

    ' الحصول على الاسمين من الخليتين A3 وB3
    strName1 = Range("A3").Value
    strName2 = Range("B3").Value

    ' إيجاد موضع الحرف المختلف
    intDiffPos = FindDifferencePos(strName1, strName2)

    ' إظهار اسم الحرف المختلف في الخلية C3
    If intDiffPos > 0 Then
        strDiffChar = Mid(strName1, intDiffPos, 1)
        Range("C3").Value = "الحرف المختلف: " & strDiffChar
    Else
        Range("C3").Value = "لا يوجد اختلاف"
    End If
End Sub

' دالة لإيجاد موضع الحرف المختلف بين سلسلتين
Function FindDifferencePos(strName1 As String, strName2 As String) As Integer
    Dim intPos As Integer

    ' مقارنة السلسلتين حرفًا بحرف
    For intPos = 1 To Len(strName1)
        If Mid(strName1, intPos, 1) <> Mid(strName2, intPos, 1) Then
            ' تم العثور على الحرف المختلف
            FindDifferencePos = intPos
            Exit For
        End If
    Next intPos

    ' لم يتم العثور على أي اختلاف
    If intPos > Len(strName1) Then
        FindDifferencePos = 0
    End If
End Function

 

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

شكرااااااااااا جداااااااااااااااااااا ربنا يبارك فيكم

ممكن اخليها الى مدى مفتوح يعنى لو الأسماء كتيرة

a3  b3

a4 b4

a5 b5

وفتح المدى

وأثبت a هو الاساس

محمد           محم          الفرق د

خالد            حالد             الفرق خ

وفتح المدى الى ملا نهاية

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

شكرااااااااااااااااااااااااااااااااااااااااااااااااااا جداااااااااااااااااااااااااااااااااااااااااااااااااا فعلا ممتااااااااااااااااااااااااااااااااااااااااااااااااااااااز

موقع محترم جداااااااااااااااااااااااااااااااااااااااا

المعادله لحد 102 ينفع اخليها لحد 1000000 واسف لكثرة الطلبات

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

  • 4 weeks later...

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

جزاكم الله خيرا على هذا العمل 

سؤال هل يمكن تلوين الحروف المختلفة بين الخليتين مع البقاء على الكلمة الأصلية 

مثلا: مَالِكِ = مَلكِ  أو  تَرْجِعُونَ= يُرْجَعُونَ : يعني نلون الألف في مالك على أساس انه هو الحرف المختلف من الكلمة الأصلية أو التاء والجيم في يُرْجَعُونَ وهكذا.

بارك الله فيكم

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information