محسن33 قام بنشر الإثنين at 11:00 مشاركة قام بنشر الإثنين at 11:00 السلام عليكم لدي عمودين في حدود 200000 صف اريد مقارنة العمودين واستخراج القيم المختلفة بينهم بالرغم من تكرارها في العمود الاخر مرفق لا داعى لضغط الملف طالما مساحته صغيره مقارنة.xlsx رابط هذا التعليق شارك More sharing options...
حسونة حسين قام بنشر الإثنين at 13:37 مشاركة قام بنشر الإثنين at 13:37 وعليكم السلام ورحمه الله وبركاته تفضل مقارنة.xlsb 3 رابط هذا التعليق شارك More sharing options...
عبدالله بشير عبدالله قام بنشر الإثنين at 14:08 مشاركة قام بنشر الإثنين at 14:08 (معدل) حل رائع معلمنا حسونة حسين تم تعديل الإثنين at 14:44 بواسطه عبدالله بشير عبدالله 2 رابط هذا التعليق شارك More sharing options...
عمر الجزاوى قام بنشر الإثنين at 15:44 مشاركة قام بنشر الإثنين at 15:44 استاذ حسونة حل رائع بعد اذنك ممكن تضيف لينا شرط ثالث ان الكود يظهر القيم المشتركة بين العمودين رابط هذا التعليق شارك More sharing options...
حسونة حسين قام بنشر الإثنين at 18:16 مشاركة قام بنشر الإثنين at 18:16 تفضل اخى مقارنة.xlsb 2 رابط هذا التعليق شارك More sharing options...
عمر الجزاوى قام بنشر الإثنين at 18:49 مشاركة قام بنشر الإثنين at 18:49 استاذ حسونة الف شكرا على الاهتمام انا كنت ببحث عن حل قريب ووجدت خلول بالدوال ولكن حلك بالكود رائع وجميل ومميز الف الف شكر 1 رابط هذا التعليق شارك More sharing options...
حسونة حسين قام بنشر الإثنين at 18:53 مشاركة قام بنشر الإثنين at 18:53 الشكر لله اخى والحمد لله الذي وفقنا لمساعدتك رابط هذا التعليق شارك More sharing options...
محسن33 قام بنشر الثلاثاء at 00:28 الكاتب مشاركة قام بنشر الثلاثاء at 00:28 (معدل) السلام عليكم شكرا على الحل للاخ العزيز حسونة حسين ولكن جربت ادخل بيانات حتى الصف20000 وعند الضغط على الcommandbutton ظهر error تم تعديل الثلاثاء at 00:47 بواسطه محسن33 رابط هذا التعليق شارك More sharing options...
محمد هشام. قام بنشر الثلاثاء at 04:07 مشاركة قام بنشر الثلاثاء at 04:07 (معدل) اظن ان الكود المقترح من الاستاد @حسونة حسين يشتغل بشكل جيد على العموم جرب هدا Option Explicit Sub test() Dim arr As Variant, i As Long, Irow As Long Dim tmp1 As Object, tmp2 As Object, c As Variant Dim n As Variant, a As Variant, b As Variant Dim WS As Worksheet: Set WS = Sheets("Sheet1") Application.ScreenUpdating = False With WS Irow = .Columns("A:E").Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row If Irow > 1 Then .Range("C2:E" & Irow).ClearContents End If arr = .Range("A2:B" & Irow).Value Set tmp1 = CreateObject("Scripting.Dictionary") Set tmp2 = CreateObject("Scripting.Dictionary") For i = 1 To UBound(arr, 1) If arr(i, 1) <> "" Then tmp1(arr(i, 1)) = True If arr(i, 2) <> "" Then tmp2(arr(i, 2)) = True Next i For Each n In tmp1 If tmp2.exists(n) Then c = cnt(c, n) tmp2.Remove n Else a = cnt(a, n) End If Next n For Each n In tmp2 b = cnt(b, n) Next n If Not IsEmpty(a) Then [C2].Resize(UBound(a), 1).Value = WorksheetFunction.Transpose(a) If Not IsEmpty(b) Then [D2].Resize(UBound(b), 1).Value = WorksheetFunction.Transpose(b) If Not IsEmpty(c) Then [E2].Resize(UBound(c), 1).Value = WorksheetFunction.Transpose(c) Application.ScreenUpdating = True End With End Sub Function cnt(arr As Variant, Value As Variant) As Variant If IsEmpty(arr) Then ReDim arr(1 To 1) arr(1) = Value Else ReDim Preserve arr(1 To UBound(arr) + 1) arr(UBound(arr)) = Value End If cnt = arr End Function مقارنة 3.xlsb تم تعديل الثلاثاء at 04:09 بواسطه محمد هشام. 2 رابط هذا التعليق شارك More sharing options...
حسونة حسين قام بنشر الأربعاء at 05:29 مشاركة قام بنشر الأربعاء at 05:29 وعليكم السلام ورحمة الله وبركاته في 24/9/2024 at 03:28, محسن33 said: ولكن جربت ادخل بيانات حتى الصف20000 وعند الضغط على الcommandbutton ظهر error ما هو الخطأ الذي يظهر لانه لا يظهر اخطأء بعد وضع بيانات الي الصف ٢٠ ألف رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان