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

معادلة مزدوجة لجلب الاسم والرقم بنفس الخانة


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

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

يمكن استعمال هذا الكود

Option Explicit
Dim My_rgA As Range, My_rgB As Range
Dim r%
'++++++++++++++++++++++++++++++++++
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Set My_rgA = Range("A2", Range("A1").End(4))
Set My_rgB = Range("B2", Range("B1").End(4))

If Target.Cells.Count = 1 Then
  Select Case Target.Address
   Case "$E$3": get_valB
   Case "$F$3": get_valA
  End Select
End If
Application.EnableEvents = True
End Sub
'++++++++++++++++++++++++++++++++++++++
Sub get_valB()

If Application.CountIf(My_rgA, Range("E3")) Then
r = My_rgA.Find(Range("E3"), lookat:=1).Row
 If r <> 0 Then Range("F3") = My_rgB.Cells(r - 1)
  Else
   Range("F3") = vbNullString
 End If

End Sub
'+++++++++++++++++++++++++++++++++++++
Sub get_valA()

If Application.CountIf(My_rgB, Range("F3")) Then
r = My_rgB.Find(Range("F3"), lookat:=1).Row
  If r <> 0 Then Range("E3") = My_rgA.Cells(r - 1)
  Else
    Range("E3") = vbNullString
  End If

End Sub

الملف مرفق

Double_formula.xlsm

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

  • أفضل إجابة

في هذه الحالة

شيت Source  هي شيت المصدر  و شيت Salim هي شيت النتيجة

الكود اللازم

Option Explicit
Dim My_rgA As Range, My_rgB As Range
Dim r%
'++++++++++++++++++++++++++++++++++
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Set My_rgA = Sheets("Source").Range("A2", Sheets("Source").Range("A1").End(4))
Set My_rgB = Sheets("Source").Range("B2", Sheets("Source").Range("B1").End(4))

If Target.Cells.Count = 1 Then
  Select Case Target.Address
   Case "$E$3": get_valB
   Case "$F$3": get_valA
  End Select
End If
Application.EnableEvents = True
End Sub
'++++++++++++++++++++++++++++++++++++++
Sub get_valB()

If Application.CountIf(My_rgA, Range("E3")) Then
r = My_rgA.Find(Range("E3"), lookat:=1).Row
 If r <> 0 Then Range("F3") = My_rgB.Cells(r - 1)
  Else
   Range("F3") = IIf(Range("E3") = "", "", "Not Found")
 End If

End Sub
'+++++++++++++++++++++++++++++++++++++
Sub get_valA()

If Application.CountIf(My_rgB, Range("F3")) Then
r = My_rgB.Find(Range("F3"), lookat:=1).Row
  If r <> 0 Then Range("E3") = My_rgA.Cells(r - 1)
  Else
    Range("E3") = IIf(Range("F3") = "", "", "Not Found")
  End If

End Sub

الملف الجديد

 

 

Double_formula 2 Sheets.xlsm

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

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