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

اريد داله تظهر الأرقام وعددها الموجودة في العمود A وليست موجود في العمود B


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

اريد داله تظهر الأرقام وعددها الموجودة في العمود A وليست موجود في العمود B

السلام عليكم

لدي عمودين اخواني بهما ارقام وليكن A و B اريد في الخلية مثلا C1 اني يظهر لي عدد الأرقام التي موجودة في العمود A وليست موجودة في B والعكس ايضاً نعمله في الخليه C2

واريد في العمود D ان تظهر لي الأرقام الغير متواجده في العمود B وموجودة في A

واريد في العمود E ان تظهر لي الأرقام الغير متواجدة في العمود A وموجودة في B

يوجد مثال على ملف اكسل

Q.rar

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

جرب هذا أخي الكريم

.......

لاحظ أن المعادلة الموجودة في خلية العدد معادلة صفيف

أي تكتبها ثم تضغط ctrl+shift+enter وليس enter فقط

mas_unique_values.rar

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

المشكلة أخي الكريم في تحديد المدى من a2 إلى a11

وأنت كتبت الرقم الجديد في الخلية a12 ولتفادي ذلك تم تعديل المعادلة لتنظر في العمود بأكمله كما فعلنا مع دالة العدّ

.................

تم تعديل المرفق في المشاركة 2

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

جزاك الله كل خير وجعلها في ميزان حسناتك الله يبارك فيك

ممكن شرح للداله بإختصار ، وكيف يمكن استخدمها في امور اخرى

ولو تكرمت لو اردت ان اخفي المعادلة تماما من شريط المعادلات بحيث لا تظهر ابدا كيف يكون ذلك الله يبارك فيك

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

اخي الغالي اعذرني

انا جربت الشرح الخاص بك الأن كتجربة على مقارنة بين العمودين بهما حوالي اكثر من 3000 رقم والنتيجة كانت كالأتي ::

1- الجهاز يأخذ وقت طويل في كل شيء سواء نقل الأرقام للأعمده او في عملية المقارنة وإظهار النتائج واحيانا يهنج الجهاز

2- الفرق بين العمودين انا اعرفه مسبقاً وهو 3 ارقام موجودة في العمود 1 وليست موجودة 2 ، وبالفعل وجدتهم في العمودين الأخريين ، ولكن ظهرت نتيجة الأعمده الخاصه بالعدد بالسالب وخطأ كما في الصوره المرفقة

3- حاولت عمل نفس الداله المرفقه على ان تكون النتائج في الصفحة والمدخلات في صفحة اخرى فشلت لأن المعادله يخبرني دوما انها غير صحيحة او الرقم صفر

post-2322-0-17225900-1323489887_thumb.pn

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

السلام عليكم

بعد اذن استاذنا الحبيب ماس

أخي الفاضل office 2003

إستخدم هذا الكود إن شاء الله يفي بالغرض


Sub MKARNH_ALI()

Application.ScreenUpdating = False

Range("C2:D2,E2:F65536").ClearContents

Q = [A15000].End(xlUp).Row

For R = 2 To Q

If Application.WorksheetFunction.CountIf([B2:B5000], Cells(R, 1)) = 0 Then

With Columns(5).Rows(65536).End(xlUp)

.Offset(1, 0) = Cells(R, 1)

End With

End If

Next

RO = [B15000].End(xlUp).Row

For R = 2 To RO

If Application.WorksheetFunction.CountIf([A2:A5000], Cells(R, 2)) = 0 Then

With Columns(6).Rows(65536).End(xlUp)

.Offset(1, 0) = Cells(R, 2)

End With

End If

Next

T = [E15000].End(xlUp).Row

Z = [F15000].End(xlUp).Row

[C2].Value = Application.WorksheetFunction.Count(Range([E2], Cells(T, "E")))

[D2].Value = Application.WorksheetFunction.Count(Range([F2], Cells(Z, "F")))

Application.ScreenUpdating = True

MsgBox "الحمد لله", vbInformation, "تمت المقارنة"

End Sub

وهذا المرفق

Q_ALi.rar

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

السلام عليكم

اخي ابو نصار

كود رائع جداً

وهذا محاولة لإختصار الكود بنفس المضمون


Sub MKARNH_ALI()

Application.ScreenUpdating = False

Range("C2:D2,E2:F65536").ClearContents

Q = [A15000].End(xlUp).Row

For R = 2 To Q

If Application.CountIf([B2:B5000], Cells(R, 1)) = 0 Then

Cells([E15000].End(xlUp).Row + 1, 5) = Cells(R, 1)

End If

If Application.CountIf([A2:A5000], Cells(R, 2)) = 0 Then

Cells([F15000].End(xlUp).Row + 1, 6) = Cells(R, 2)

End If

Next

[C2].Value = [E15000].End(xlUp).Row - 1

[D2].Value = [F15000].End(xlUp).Row - 1

Application.ScreenUpdating = True

MsgBox "الحمد لله", vbInformation, "تمت المقارنة"

End Sub

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

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

استاذ ماس123

لك علي فضل كبير لا انساه

جزاك الله كل خير

= = = =

بعد اذن اخواني العباقرة الذين سبقوني بالرد

استاذ محمد صالح

الأستاذ ابو نصار

الأستاذ ابو احمد

هذا حل آخر باستخدام الدوال

آمل ان يكون هو المطلوب

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

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

إضافة لحلول الأخوة جزاهم الله كل خير

شاهد هذا الرابط فيه شرح لفكرة مشابهه

http://excel4us.com/blog/?p=161

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

اشكركم جزيلا وقدم تم تطبيق شرح اخي الغالي

alidroos

ولكن لي طلب الله يبارك فيكم ، انا اريد الأن ان اعمل حماية للملف يعني لا اسمح الا فقط بوضع الخلايا المنسوخة للعمود 1 وال 2 اما باقي الأعمدة والنتائج محمية جربت ان اعمل ذلك بحماية الورقة يظهر لي عند اختيار الأمر ان الورقة محميوة وللقراءة فقط ماحل هذا الموضوع الله يبارك فيكم

وهل ممكن من عمل حماية لعدم اللعب في الأمر من الفيجوال بيسك

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

اخي اضف في اول الكود الغاء الحماية

وفي اخر الكود استرجاع الحمايه

هكذا بيكون الكود بعد الاضافه

فرضا ان باسورد الورقة 123


SUB A () ' تسمية وهمية للكود غيرها من الكود الفعلي الذي لديك

' فرضا أنا الباسورد 123

'=========================

' إالغاء الباسورد للورقة النشطة قبل تنفيذ الكود

' activesheet.unprotect ("123")

'=========================

' نحط الكود هنا

'=========================

' إسترجاع الحماية للورقة النشطه بعد تنفيذ الكود

' activesheet.protect password:="123"

'=========================

 END SUB

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

السلام عليكم

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


Sub MKARNH_ALI()

Application.ScreenUpdating = False

'===============================

' إلغاء الباسورد للورقة النشطه قبل عمل الكود

ActiveSheet.Unprotect ("123")

'===============================

Range("j3:K7000").ClearContents

Q = [E15000].End(xlUp).Row

For R = 3 To Q

If Application.WorksheetFunction.CountIf([F3:F5000], Cells(R, 5)) = 0 Then

With Columns(10).Rows(65536).End(xlUp)

.Offset(1, 0) = Cells(R, 5)

End With

End If

Next

RO = [F15000].End(xlUp).Row

For R = 3 To RO

If Application.WorksheetFunction.CountIf([E3:E5000], Cells(R, 6)) = 0 Then

With Columns(11).Rows(65536).End(xlUp)

.Offset(1, 0) = Cells(R, 6)

End With

End If

Next

T = [J15000].End(xlUp).Row

Z = [K15000].End(xlUp).Row

[H6].Value = Application.WorksheetFunction.Count(Range([J3], Cells(T, "J")))

[H12].Value = Application.WorksheetFunction.Count(Range([K3], Cells(Z, "K")))

Application.ScreenUpdating = True

MsgBox "الحمد لله", vbInformation, "تمت المقارنة"

'===================================

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

ActiveSheet.Protect Password:="123"

'====================================

End Sub

في حال انك تريد تغير الباسورد بدلا عن 123 غيره من الكود من هذا السطر اول الكود الى اي رقم تريده

ActiveSheet.Unprotect ("123")

وبرضه من هذا السطر في اخر الكود

ActiveSheet.Protect Password:="123"

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

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

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



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

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

Important Information