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

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

قام بنشر

أخي الكريم أسامة

أفهم مشكلتك بشكل واضح ولكن المشكلة الآن ليست في حذف الصفوف المكررة إنما في الملف نفسه كما أخبرتك

وجدت ردك من 5 دقائق هذا يعني أنك متواجد الآن حاول تتابع معي حتى نحاول الوصول لحل لملفك

لا أدري هل الحل الذي قدمه أخونا عمرو أسامة مرضي لك أم لا ... ؟ ولكن يجب التدقيق في المخرجات حتى لا تفقد أية بيانات مهمة وأنصحك بالعمل على نسخة احتياطية بشكل مبدئي حتى إذا اطمأن قلبك قمت بالتنفيذ على الملف الأصلي

 

نبدأ بالدمج لأنه هو العائق في ملفك ..لاحظت أن الدمج يكون في بعض الأحيان في العمود الأول والثاني ولكن السؤال ... ماذا بعد إزالة الدمج ؟ أقصد ما هو شكل البيان المطلوب في العمود B .. مثلاً ..هناك في الخلية A33 خلية مدمجة وبها البيان IPD-COOR-8 ..هل تريد إزالة الدمج ووضع البيان بالكامل في الخلية B33 ...؟

وأفضل أن تقوم بإزالة الدمج بنفسك ...وإليك الملف التالي سيوضح لك مواطن الدمج في العمود الأول والثاني حتى ينتظم ملفك

Merged Cells Osama.rar

قام بنشر
30 دقائق مضت, ياسر خليل أبو البراء said:

أخي الكريم أسامة

أفهم مشكلتك بشكل واضح ولكن المشكلة الآن ليست في حذف الصفوف المكررة إنما في الملف نفسه كما أخبرتك

وجدت ردك من 5 دقائق هذا يعني أنك متواجد الآن حاول تتابع معي حتى نحاول الوصول لحل لملفك

لا أدري هل الحل الذي قدمه أخونا عمرو أسامة مرضي لك أم لا ... ؟ ولكن يجب التدقيق في المخرجات حتى لا تفقد أية بيانات مهمة وأنصحك بالعمل على نسخة احتياطية بشكل مبدئي حتى إذا اطمأن قلبك قمت بالتنفيذ على الملف الأصلي

 

نبدأ بالدمج لأنه هو العائق في ملفك ..لاحظت أن الدمج يكون في بعض الأحيان في العمود الأول والثاني ولكن السؤال ... ماذا بعد إزالة الدمج ؟ أقصد ما هو شكل البيان المطلوب في العمود B .. مثلاً ..هناك في الخلية A33 خلية مدمجة وبها البيان IPD-COOR-8 ..هل تريد إزالة الدمج ووضع البيان بالكامل في الخلية B33 ...؟

وأفضل أن تقوم بإزالة الدمج بنفسك ...وإليك الملف التالي سيوضح لك مواطن الدمج في العمود الأول والثاني حتى ينتظم ملفك

Merged Cells Osama.rar

اوكي 

انا هتابع معاك

انا مش عارف هو ليه اللي شغال قبلي على المف عامل دمج اساسا

هو شغلو كلو خطأ بخطأ

حبص على الملف وارجع ابعتلك

 

33 دقائق مضت, ياسر خليل أبو البراء said:

أخي الكريم أسامة

أفهم مشكلتك بشكل واضح ولكن المشكلة الآن ليست في حذف الصفوف المكررة إنما في الملف نفسه كما أخبرتك

وجدت ردك من 5 دقائق هذا يعني أنك متواجد الآن حاول تتابع معي حتى نحاول الوصول لحل لملفك

لا أدري هل الحل الذي قدمه أخونا عمرو أسامة مرضي لك أم لا ... ؟ ولكن يجب التدقيق في المخرجات حتى لا تفقد أية بيانات مهمة وأنصحك بالعمل على نسخة احتياطية بشكل مبدئي حتى إذا اطمأن قلبك قمت بالتنفيذ على الملف الأصلي

 

نبدأ بالدمج لأنه هو العائق في ملفك ..لاحظت أن الدمج يكون في بعض الأحيان في العمود الأول والثاني ولكن السؤال ... ماذا بعد إزالة الدمج ؟ أقصد ما هو شكل البيان المطلوب في العمود B .. مثلاً ..هناك في الخلية A33 خلية مدمجة وبها البيان IPD-COOR-8 ..هل تريد إزالة الدمج ووضع البيان بالكامل في الخلية B33 ...؟

وأفضل أن تقوم بإزالة الدمج بنفسك ...وإليك الملف التالي سيوضح لك مواطن الدمج في العمود الأول والثاني حتى ينتظم ملفك

Merged Cells Osama.rar

بص هو حاليا اكتر عامودين يهموني رقم الملف وعامود الSending date

يعني عامود رقم b وعامود رقم bh

وباقي الامور هعيد صياغتها وترتيبها بوقت لاحق

بس التقرير اللي لازم يتعمل

اني اجمع جميع المعلومات من ال3 تقارير واشيل التكرار للصف كامل واظهر رقم الفاتوره وتاريخ الارسال 

ده حاليا اللي مهم

قام بنشر

أخي الكريم أسامة أنا طورت الكود الأخير بحيث يلغي الدمج في العمودين ويضع القيمة كاملة في الخلية في العمود الثاني

إليك الملف الأصلي لك الذي قمت بتحويل امتداده فقط إلى xlsm ووضعت الأكواد ، لكن لم أنفذ على الملف الأصلي الذي سأرفقه أية أكواد حتى لا يحدث أي خلل بالبياانات وسأترك لك التجربة ... حاول كما أخبرتك أن يكون العمل على نسخة احتياطية

أنا عندما أكتب الكود أكتب الكود ولا أنفذه على الملف الأصلي ، بل أقوم بأخذ نسخة من الملف وأجرب عليها الكود للتأكد من صحة وسلامة النتائج ...حاول قدر الإمكان عدم الإخلال بالملف الأصلي

قم بتحميل المرفق ثم اضغط Alt + F8 من لوحة المفاتيح واختر الإجراء الفرعي المسمى DetectMergedCells ونفذه .. وسترى الخلايا التي كانت مدمجة وتم إلغاء الدمج بها

قم بالتعديل بعدها على الخلايا في العمود الثاني بما يتناسب مع مدخلاتك وبهذا تكون انتيهت من مشكلة الدمج في الخلايا في العمود الأول والثاني

 

Merged Cells Osama Original.rar

قام بنشر
الان, ياسر خليل أبو البراء said:

أخي الكريم أسامة أنا طورت الكود الأخير بحيث يلغي الدمج في العمودين ويضع القيمة كاملة في الخلية في العمود الثاني

إليك الملف الأصلي لك الذي قمت بتحويل امتداده فقط إلى xlsm ووضعت الأكواد ، لكن لم أنفذ على الملف الأصلي الذي سأرفقه أية أكواد حتى لا يحدث أي خلل بالبياانات وسأترك لك التجربة ... حاول كما أخبرتك أن يكون العمل على نسخة احتياطية

أنا عندما أكتب الكود أكتب الكود ولا أنفذه على الملف الأصلي ، بل أقوم بأخذ نسخة من الملف وأجرب عليها الكود للتأكد من صحة وسلامة النتائج ...حاول قدر الإمكان عدم الإخلال بالملف الأصلي

قم بتحميل المرفق ثم اضغط Alt + F8 من لوحة المفاتيح واختر الإجراء الفرعي المسمى DetectMergedCells ونفذه .. وسترى الخلايا التي كانت مدمجة وتم إلغاء الدمج بها

قم بالتعديل بعدها على الخلايا في العمود الثاني بما يتناسب مع مدخلاتك وبهذا تكون انتيهت من مشكلة الدمج في الخلايا في العمود الأول والثاني

 

Merged Cells Osama Original.rar

مش مشكلة عندي عدة نسخ من الملف الاصلى

طي بعد الانتهاء من الدمج ايه المرحلة التالية لانهاء التكرار ؟؟

قام بنشر

خلينا واحدة واحدة ..الغاء الدمج كان المرحلة الأولى ..شوف البيانات التي تم دمجها في العمود الثاني هل هي نفس مدخلاتك أم أنك ستقوم بتقسيم البيان الواحد إلى خليتين ..حاول تركز في ضبط الملف أولاً

لأن الأكواد لن تعمل لديك طالما أن هناك دمج ، أخبرتك أن الدمج عدو الأكواد الأول والأوحد

تقبل تحياتي

قام بنشر
6 دقائق مضت, ياسر خليل أبو البراء said:

خلينا واحدة واحدة ..الغاء الدمج كان المرحلة الأولى ..شوف البيانات التي تم دمجها في العمود الثاني هل هي نفس مدخلاتك أم أنك ستقوم بتقسيم البيان الواحد إلى خليتين ..حاول تركز في ضبط الملف أولاً

لأن الأكواد لن تعمل لديك طالما أن هناك دمج ، أخبرتك أن الدمج عدو الأكواد الأول والأوحد

تقبل تحياتي

اوكي الغاء الدمج تمام ومعنديش اي مشاكل فيه

قام بنشر

المرحلة الثانية ..

أنا بعتمد الآن على دمج النصوص في الخلايا الموجودة في الصف الواحد .. سؤال الأول : ما هي الأعمدة التي تريد الاعتماد عليها بمعنى أنه لو تكررت القيم في تلك الأعمدة تعتبر الصفوف مكررة ... أنا حاولت ألم الأعمدة كلها من تاني عمود لحد العمود BH لكن ظهر معايا مشكلة جديدة أن هناك أخطاء في المعادلات تسبب توقف عمل الكود في آخر شوية أعمدة ..حلها بسيط باستخدام الدالة IFERROR ...فهل توافق في التعديل على تلك الأعمدة لتخطي المشكلة؟؟

 

قام بنشر
27 دقائق مضت, ياسر خليل أبو البراء said:

المرحلة الثانية ..

أنا بعتمد الآن على دمج النصوص في الخلايا الموجودة في الصف الواحد .. سؤال الأول : ما هي الأعمدة التي تريد الاعتماد عليها بمعنى أنه لو تكررت القيم في تلك الأعمدة تعتبر الصفوف مكررة ... أنا حاولت ألم الأعمدة كلها من تاني عمود لحد العمود BH لكن ظهر معايا مشكلة جديدة أن هناك أخطاء في المعادلات تسبب توقف عمل الكود في آخر شوية أعمدة ..حلها بسيط باستخدام الدالة IFERROR ...فهل توافق في التعديل على تلك الأعمدة لتخطي المشكلة؟؟

 

مهي دي المشكلة

مفيش عامود ممكن اعتمد عليه لانو مفيش مفتاح اساسي

المفتاح الاساسي المفروض يكون اسم الملف لاكن للاسف هنااك تكرار باسم الملف لكن القيم مختلفة وهنالك تكرار ايضا وبنفس القيم

يعني لازم اقارن الصف كلو بصف تاني مش خليه بخليه

وبالاخر يهمني اسم الملف مع تاريخ الارسال

يعني الخلية b والخلية bh

قام بنشر
الان, ياسر خليل أبو البراء said:

عمود تاريخ الإرسال فارغ في معظم الصفوف ..كيف تريد التعامل مع الخلايا الفارغة في هذه الحالة؟

 

بالظبط هو فارغ في اول 3 او 43 شهور

هم سيقومون بادخاله لاحقا

لانني اريد عمل دالة vloukup  في صفحة تانيه لما يكتب اسم الملف يديه تاريخ الارسال ولو كانت فارغه يقولو انو مفيش تاريخ ارسال 

قام بنشر

أخي الكريم إذا اعتمدنا على هذين العمودين فقط سيتم حذف صفوف كثيرة جداً سيتبقى عدد الصفوف 2230 فقط .. هل أنت متأكد من النتائج ؟؟؟

أعتقد أنه يجب الاعتماد على عدد أعمدة أكثر ..

ما رأيك أن نعتمد في تطابق الصفوف على الأعمدة من العمود الثاني إلى العمود AS حيث أن ما يليهم من أعمدة معظمها معادلات ... ونتغاضى عن تاريخ الإرسال ..

حدد الأعمدة حتى يسهل العمل

 

قام بنشر
10 دقائق مضت, ياسر خليل أبو البراء said:

أخي الكريم إذا اعتمدنا على هذين العمودين فقط سيتم حذف صفوف كثيرة جداً سيتبقى عدد الصفوف 2230 فقط .. هل أنت متأكد من النتائج ؟؟؟

أعتقد أنه يجب الاعتماد على عدد أعمدة أكثر ..

ما رأيك أن نعتمد في تطابق الصفوف على الأعمدة من العمود الثاني إلى العمود AS حيث أن ما يليهم من أعمدة معظمها معادلات ... ونتغاضى عن تاريخ الإرسال ..

حدد الأعمدة حتى يسهل العمل

 

لا طبعا لا اريد الاعتماد على هذين العمودين

انا اقصد انا هذين العمود هما ما يهماني في الاخر

لكن هنالك اعمده مهمه مثل العملاء وغيرهم

يجب علينا الاعتماد على جميع الاعمدة في عملية المقارنه

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

 

قام بنشر

أخي الكريم أسامة

إليك الملف التالي تم الاعتماد على كل الأعمدة من العمود الثاني إلى العمود AS علاوة على العمود BH ... تم تجميع القيم في هذه الأعمدة وحذف الصفوف المكررة بناءً على تلك الأعمدة

حمل الملف وفك الضغط وافتح الملف واضغط Alt + F8 ونفذ الإجراء الموجود في النافذة والمسمى DeleteRowsByColumnDuplicates وذلك بالنقر على كلمة Run وانتظر دقيقة واحدة ، ستظهر لك في النهاية رسالة بانتهاء عمل الكود ....

إن شاء الله يكون المطلوب

Sub DeleteRowsByColumnDuplicates()
    Application.ScreenUpdating = False
    Application.Calculation = xlManual
    
        Call DetectMergedCells
        
        Columns("BI:BI").Delete
        
        With Range("BI2:BI" & Cells(Rows.Count, 1).End(xlUp).Row)
            .Formula = "=ConCat("","",B2:AS2,BH2)"
            .Value = .Value
            .NumberFormat = "@"
        End With
        
        Range("A1:BI" & Cells(Rows.Count, 1).End(xlUp).Row).RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61), Header:=xlYes
        Columns("BI:BI").ClearContents
    Application.Calculation = xlAutomatic
    Application.ScreenUpdating = True
    
    MsgBox "Completed ...", 64
End Sub

Private Sub DetectMergedCells()
    Dim I As Long
    
    Application.ScreenUpdating = False
    
        Columns("BM:BN").ClearContents
        
        For I = 2 To Cells(Rows.Count, 1).End(xlUp).Row
            With Cells(I, "A")
                If .MergeCells = True Then
                    Cells(I, "BM").Value = "Merged"
                    Cells(I, "BN").Value = .MergeArea.Cells.Count
                    Cells(I, "BO").Value = .Value
                    .UnMerge: .ClearContents
                    Cells(I, "B").Value = Cells(I, "BO").Value
                End If
            End With
        Next I
        
        ActiveSheet.AutoFilterMode = False
        Range("A1:BN1").AutoFilter Field:=65, Criteria1:="Merged"
        Columns("E:BL").Hidden = True
        
        Columns("BM:BO").ClearContents
        ActiveSheet.AutoFilterMode = False
        Cells.EntireColumn.Hidden = False
        
    Application.ScreenUpdating = True
End Sub

Function ConCat(Delimiter As Variant, ParamArray CellRanges() As Variant) As String
    Dim Index As Long, Rw As Long, Col As Long, Down As Boolean, Rng As Range, Cell As Range
    If IsMissing(Delimiter) Then Delimiter = ""
    Index = LBound(CellRanges)
    Do While Index <= UBound(CellRanges)
        If TypeName(CellRanges(Index)) = "Range" Then
            Set Rng = CellRanges(Index)
            If Index < UBound(CellRanges) Then
                If TypeName(CellRanges(Index + 1)) <> "Range" Then Down = CellRanges(Index + 1) = "|"
            End If
            If Down Then
                For Col = 0 To Rng.Columns.Count - 1
                    For Rw = 0 To Rng.Rows.Count - 1
                        If Len(Rng(1).Offset(Rw, Col).Value) Then
                            ConCat = ConCat & Delimiter & Rng(1).Offset(Rw, Col)
                        End If
                    Next
                Next
                Index = Index + 1
            Else
                For Each Cell In Intersect(Rng, Rng.Parent.UsedRange)
                    If Len(Cell.Value) Then ConCat = ConCat & Delimiter & Cell.Value
                Next
            End If
        Else
            If CellRanges(Index) = "||" Then
                ConCat = ConCat & Delimiter & "|"
            Else
                ConCat = ConCat & Delimiter & CellRanges(Index)
            End If
        End If
        Index = Index + 1
    Loop
    ConCat = Mid(ConCat, Len(Delimiter) + 1)
End Function

تقبل تحياتي

Check Merged Cells & Remove Duplicate Rows Osama.rar

قام بنشر

شكرا جزيلا على مجهوداتكم الكبيره والمساعده

معلش بس انا عايز استفسر عن حاجه

دلوقتي الاخ عمرو مشكورا قام بعطاء ملف بعد الحذف

والاخ ياسر مشكورا قمت باعطائي ملف بعد الحذف

لكن  عدد الصفوف بالنهاية مختلف 

فعند الاخ ياسر  عدد الصفوف2230 وعند الاخ عمرو  عددهم 1161

ايه المشكلة هنا وايهم اصح ؟؟

معلش انا مش بشكك فيكم بس الموضوع حساس جدا وواقف عليه مستقبل شغلي واي خطا كبير ممكن يحصلي ضرر كبير لا سمح الله

قام بنشر
39 دقائق مضت, اسامة88 said:

شكرا جزيلا على مجهوداتكم الكبيره والمساعده

معلش بس انا عايز استفسر عن حاجه

دلوقتي الاخ عمرو مشكورا قام بعطاء ملف بعد الحذف

والاخ ياسر مشكورا قمت باعطائي ملف بعد الحذف

لكن  عدد الصفوف بالنهاية مختلف 

فعند الاخ ياسر  عدد الصفوف2230 وعند الاخ عمرو  عددهم 1161

ايه المشكلة هنا وايهم اصح ؟؟

معلش انا مش بشكك فيكم بس الموضوع حساس جدا وواقف عليه مستقبل شغلي واي خطا كبير ممكن يحصلي ضرر كبير لا سمح الله

الملف الي انا اشتغلت عليه غير الي عند الاستاذ المحترم ياسر 

اساسا الي انا اشتغلت عليه موجود فيه جدول بيانات حتى الصف 1164 فقط 

مرفق الملف الي انا اشتغلت عليه

 

complete2 - Copy (2).rar

قام بنشر
19 دقائق مضت, Amro osama said:

الملف الي انا اشتغلت عليه غير الي عند الاستاذ المحترم ياسر 

اساسا الي انا اشتغلت عليه موجود فيه جدول بيانات حتى الصف 1164 فقط 

مرفق الملف الي انا اشتغلت عليه

 

complete2 - Copy (2).rar

هما كلهم منفدين على بعض

على العموم انا فهمت المقصود اكتر

دلوقتي اللي مش عايز ينشغل اللي اي رقم ملف فيه local  لاني دي هيتكرر كتير

اما باقي الارقام تتحذف لو متكرره

يعني لو اشيل الصفوف اللي بتحتو يعلى local و بعد كده اعمل حذف المكرر من قائمه داتا وبعد كده ارجع الlocal يمكن يزبط معايا بشكل مضمون

بس ده حياخد وقت كبير اوي مني

19 دقائق مضت, Amro osama said:

الملف الي انا اشتغلت عليه غير الي عند الاستاذ المحترم ياسر 

اساسا الي انا اشتغلت عليه موجود فيه جدول بيانات حتى الصف 1164 فقط 

مرفق الملف الي انا اشتغلت عليه

 

complete2 - Copy (2).rar

هما كلهم منفدين على بعض

على العموم انا فهمت المقصود اكتر

دلوقتي اللي مش عايز ينشغل اللي اي رقم ملف فيه local  لاني دي هيتكرر كتير

اما باقي الارقام تتحذف لو متكرره

يعني لو اشيل الصفوف اللي بتحتو يعلى local و بعد كده اعمل حذف المكرر من قائمه داتا وبعد كده ارجع الlocal يمكن يزبط معايا بشكل مضمون

بس ده حياخد وقت كبير اوي مني

قام بنشر
الان, Amro osama said:

كل الشيتات الي في ال 3 ملفات عليز تجمعهم في شييت واحد ؟

بالزبط 

بس من دون تكرار الصفوف كاملة

لانه في  بعض الارقام مكرره

فيه خلايا مكرره بس باقي المعلومات مش مكرره

يعني الخلايا اللي تحتوي على اسم الملف local مكرره بس باقي المحتوي مش مكرر

 

قام بنشر

فيه رؤوس اعمدة مختلفة في كل شييت .. هتعمل فيها ايه ؟

و فيه اغمدة ملهاش اصلا رؤوس زي شييت Januray-2015 في الملف East IPD TRACKING 2015 with Dispatch date shaker

قام بنشر

أخي الفاضل عمرو أسامة

يرجى تغيير اسم الظهور للغة العربية ، وأهلا بك في المنتدى بين إخوانك ونورت المنتدى

بارك الله فيك على تقديم المساعدة الرائعة ...

يبدو اننا نعمل على نفس الفكرة وهي دمج النصوص في الأعمدة ولكني استخدمت دالة معرفة لذلك

الملف الذي عملت عليه أنت لم يكن فيه خلايا مدمجة في العمودين الأول والثاني وإلا لقابلتك نفس المشكلة الخاصة بالدمج

 

أخي الكريم اسامة

يرجى فيما بعد التركيز على ملف واحد فقط لأن هذا يشتت الجهود المبذولة .. فقد تهت قبلنا في ملفينا ولم أكن أعلم أن هناك ملف آخر

عموماً إليك كود آخر أسرع من الأول ويعطي نفس النتائج على الملف الذي عملت عليه من البداية

وهذا الكود من مكتبة الصرح ..جربته في البداية فأعطاني خطأ بسبب الدمج فقمت بإزالة الدمج واستخدامه مرة أخرى لأنه سريع جداً ويعطي نتائج صحيحة إن شاء الله

Public Sub RemoveDuplicates(StartCell As Range, Optional Header As Boolean = False)
    Dim Table As Range
    Dim TotalCols As Long
    Dim ColArray As Variant
    Dim Col As Long
    
    If StartCell.Count > 1 Then Exit Sub
    Set Table = StartCell.CurrentRegion
    TotalCols = Table.Columns.Count
    ReDim ColArray(0 To TotalCols - 1)
    
    For Col = 1 To TotalCols
        ColArray(Col - 1) = Col
    Next
    
    Application.ScreenUpdating = False
        If Header Then
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlYes
        Else
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlNo
        End If
    Application.ScreenUpdating = True
End Sub

Sub RemoveDuplicateRowsA()
    RemoveDuplicates Range("A1"), True
End Sub

لو فيه ملف آخر يرجى رفعه مع التوضيح للمطلوب مرة أخرى

Check Merged Cells & Remove Duplicate Rows YasserKhalil.rar

قام بنشر
46 دقائق مضت, Amro osama said:

فيه رؤوس اعمدة مختلفة في كل شييت .. هتعمل فيها ايه ؟

و فيه اغمدة ملهاش اصلا رؤوس زي شييت Januray-2015 في الملف East IPD TRACKING 2015 with Dispatch date shaker

كلهم واحد

يعين لو اخدت من ملف East IPD TRACKING 2015 with Dispatch date Mustafa من صفحة تاريخ 5 ونسخت الهيدر على الجميع كلو حيركب مع بعض

المشكلة ان اللي اشتغل معملهمش على باقي الصفحات من السرعه

14 دقائق مضت, ياسر خليل أبو البراء said:

أخي الفاضل عمرو أسامة

يرجى تغيير اسم الظهور للغة العربية ، وأهلا بك في المنتدى بين إخوانك ونورت المنتدى

بارك الله فيك على تقديم المساعدة الرائعة ...

يبدو اننا نعمل على نفس الفكرة وهي دمج النصوص في الأعمدة ولكني استخدمت دالة معرفة لذلك

الملف الذي عملت عليه أنت لم يكن فيه خلايا مدمجة في العمودين الأول والثاني وإلا لقابلتك نفس المشكلة الخاصة بالدمج

 

أخي الكريم اسامة

يرجى فيما بعد التركيز على ملف واحد فقط لأن هذا يشتت الجهود المبذولة .. فقد تهت قبلنا في ملفينا ولم أكن أعلم أن هناك ملف آخر

عموماً إليك كود آخر أسرع من الأول ويعطي نفس النتائج على الملف الذي عملت عليه من البداية

وهذا الكود من مكتبة الصرح ..جربته في البداية فأعطاني خطأ بسبب الدمج فقمت بإزالة الدمج واستخدامه مرة أخرى لأنه سريع جداً ويعطي نتائج صحيحة إن شاء الله


Public Sub RemoveDuplicates(StartCell As Range, Optional Header As Boolean = False)
    Dim Table As Range
    Dim TotalCols As Long
    Dim ColArray As Variant
    Dim Col As Long
    
    If StartCell.Count > 1 Then Exit Sub
    Set Table = StartCell.CurrentRegion
    TotalCols = Table.Columns.Count
    ReDim ColArray(0 To TotalCols - 1)
    
    For Col = 1 To TotalCols
        ColArray(Col - 1) = Col
    Next
    
    Application.ScreenUpdating = False
        If Header Then
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlYes
        Else
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlNo
        End If
    Application.ScreenUpdating = True
End Sub

Sub RemoveDuplicateRowsA()
    RemoveDuplicates Range("A1"), True
End Sub

لو فيه ملف آخر يرجى رفعه مع التوضيح للمطلوب مرة أخرى

Check Merged Cells & Remove Duplicate Rows YasserKhalil.rar

اخي العزيز ياسر 

اعتذر عما بدر مني من خطأ بسبب عدم فهمي للمطلوب في اول الموضوع واتضحت الصورة فيما بعد

الملف الذي قمت بارساله لك هوا الملطوب 

والملف المرسل للاخ عمرو الاخير هوا المطلوب وهما نفس الملف

انا تطبيق الكود مش بياخد معايا وقت خالص 

مجرد ثواني وبيحذف الصفوف 

حجرب الملف الجديد واشوف ايه حيصل معايا

23 دقائق مضت, ياسر خليل أبو البراء said:

أخي الفاضل عمرو أسامة

يرجى تغيير اسم الظهور للغة العربية ، وأهلا بك في المنتدى بين إخوانك ونورت المنتدى

بارك الله فيك على تقديم المساعدة الرائعة ...

يبدو اننا نعمل على نفس الفكرة وهي دمج النصوص في الأعمدة ولكني استخدمت دالة معرفة لذلك

الملف الذي عملت عليه أنت لم يكن فيه خلايا مدمجة في العمودين الأول والثاني وإلا لقابلتك نفس المشكلة الخاصة بالدمج

 

أخي الكريم اسامة

يرجى فيما بعد التركيز على ملف واحد فقط لأن هذا يشتت الجهود المبذولة .. فقد تهت قبلنا في ملفينا ولم أكن أعلم أن هناك ملف آخر

عموماً إليك كود آخر أسرع من الأول ويعطي نفس النتائج على الملف الذي عملت عليه من البداية

وهذا الكود من مكتبة الصرح ..جربته في البداية فأعطاني خطأ بسبب الدمج فقمت بإزالة الدمج واستخدامه مرة أخرى لأنه سريع جداً ويعطي نتائج صحيحة إن شاء الله


Public Sub RemoveDuplicates(StartCell As Range, Optional Header As Boolean = False)
    Dim Table As Range
    Dim TotalCols As Long
    Dim ColArray As Variant
    Dim Col As Long
    
    If StartCell.Count > 1 Then Exit Sub
    Set Table = StartCell.CurrentRegion
    TotalCols = Table.Columns.Count
    ReDim ColArray(0 To TotalCols - 1)
    
    For Col = 1 To TotalCols
        ColArray(Col - 1) = Col
    Next
    
    Application.ScreenUpdating = False
        If Header Then
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlYes
        Else
            Table.RemoveDuplicates Columns:=(ColArray), Header:=xlNo
        End If
    Application.ScreenUpdating = True
End Sub

Sub RemoveDuplicateRowsA()
    RemoveDuplicates Range("A1"), True
End Sub

لو فيه ملف آخر يرجى رفعه مع التوضيح للمطلوب مرة أخرى

Check Merged Cells & Remove Duplicate Rows YasserKhalil.rar

كمان معلش زي ما انتا شوفت فيه اعمدة التاريخ المرسل فيه بعض الخلايا فارغة

دلوقتي عايز انا اعمل بصفحة تانيه بحث

بحيث يقوم الشخص بادخال رقم الفاتوره فيظهر له تاريخ الارسال والعميل وغيرها

دلوقتي انا عمل المووع ده على دالة vlookup ودمجت معها iferrore عشان لو دخل رقم ملف مش موجود يظهرلو انو الملف مش موجود

بس دلوقتي لما يكون الخليه فارة زي بعض خلايا تاريخ الارسال ايه العمل عشان يظهرلو ان الخليه دي فاضيه لانها مش زابطه على iferrore

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