M365Con 2027 – مؤتمر مجاني عبر الإنترنت · 11–22 Jan 2027 · 120 sessions→ m365con.net

المدونة · Mirko Peters

كيفية إزالة التكرارات في Excel: الأمر والصيغ وPower Query

By ·

كيفية إزالة التكرارات في Excel: استخدم علامة التبويب Data وأمر Remove Duplicates، أو احتفظ بالبيانات الأصلية باستخدام UNIQUE والصيغ وPower Query. الخطوات والحدود والأخطاء الشائعة.

Automatically translated with AI from the original post. Read the English original

لإزالة التكرارات في Excel، حدّد بياناتك، وانتقل إلى Data > Remove Duplicates، وفعّل الأعمدة التي تحدد ما يُعد تكرارًا، ثم اختر OK. يحذف Excel كل صف يكرر القيم في تلك الأعمدة، ويُبقي الصف الأول. يستهدف هذا المقال مستخدمي Excel الذين ينظفون القوائم والتصديرات والتقارير ويريدون اختيار الطريقة المناسبة. ستجد أولًا الأمر نفسه، ثم طرق التحقق من التكرارات قبل حذفها، ثم خيارات تحافظ على بياناتك المصدر، وأخيرًا بعض مسارات الأتمتة للمهام المتكررة.

النقاط الرئيسية

  • حدّد بياناتك، وافتح Data، ثم Remove Duplicates، وفعّل الأعمدة التي تحدد التكرار، ثم اختر OK. يحذف Excel الصف بأكمله ويُبقي أول تطابق.
  • الحذف دائم، لذا انسخ البيانات إلى ورقة أخرى أولًا. يعمل Ctrl+Z فقط إلى أن تقوم بإجراء آخر.
  • يقارن Excel ما يظهر داخل الخلية، لذلك تُعد القيمتان 3/8/2006 وMar 8, 2006 قيمتين مختلفتين. نظّف التنسيقات أولًا.
  • إذا أردت مراجعة التكرارات قبل حذفها، فأبرزها باستخدام التنسيق الشرطي، أو ضع علامة عليها بعمود مساعد يستخدم COUNTIF.
  • تمنحك UNIQUE وPower Query قائمة نظيفة دون المساس بالبيانات المصدر، كما تُكرر Power Query خطوات التنظيف مع كل تحديث.

يوفر Excel أكثر من أداة لهذا الغرض، لأن "التكرار" قد يعني أشياء مختلفة. أحيانًا يكون صفًا مطابقًا تمامًا، وأحيانًا يكون المعرّف نفسه للعميل مع رقم هاتف مختلف. حدّد ما تقصده قبل النقر على أي شيء.

إزالة التكرارات باستخدام أمر علامة التبويب Data

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

  1. انسخ البيانات احتياطيًا. انسخ النطاق إلى ورقة أو مصنف آخر. تصرّح Microsoft بوضوح بأن التكرارات تُحذف نهائيًا.
  2. حدّد النطاق. انقر على أي خلية ضمن بياناتك أو ضمن جدول Excel، أو حدّد النطاق يدويًا. يتغير النطاق المحدد أو الجدول فقط، وتبقى الخلايا خارجه في مكانها.
  3. افتح الأمر. انتقل إلى Data واختر Remove Duplicates ضمن مجموعة Data Tools.
  4. اختر الأعمدة. في مربع الحوار، فعّل الأعمدة التي ينبغي لـ Excel مقارنتها. يمكنك استخدام Select All أو Unselect All. إذا كان الصف الأول يحتوي على أسماء الأعمدة، فأبقِ My data has headers مفعّلًا.
  5. اختر OK. يعرض Excel رسالة تتضمن عدد القيم المكررة التي أُزيلت وعدد القيم الفريدة المتبقية.

انتبه إلى الخطوة 4، لأنها تربك كثيرين. الصف لا يُعدّ مكرّرًا إلا إذا تطابقت جميع الأعمدة التي حددتها. خذ قائمة تضم المعرّف (ID) والاسم (Name) والسعر (Price). إذا حددت المعرّف والاسم دون السعر، فإن صفين لهما المعرّف نفسه والاسم نفسه يُعدّان مكرّرين حتى لو اختلف سعراهما، وسيحذف Excel الصف الثاني بأكمله، بما في ذلك السعر. إذا أردت الاحتفاظ بكل صف يختلف في أي شيء، فحدد جميع الأعمدة. وإذا كان المعرّف وحده يحدد السجل، فحدد المعرّف فقط، ولكن كن على علم بما ستتخلص منه.

اضغط Ctrl+Z مباشرةً بعد تنفيذ الأمر إذا بدت النتيجة خاطئة. لا تعتمد على ذلك لاحقًا.

أي صف سيبقى: رتّب البيانات أولًا

تنص Microsoft على أن الظهور الأول يبقى، وتُحذف الصفوف المتطابقة اللاحقة. وهذا يعني أن ترتيب الصفوف هو ما يحدد النتيجة. إذا كانت لديك قائمة جهات اتصال تحتوي على عدة إدخالات لكل شخص، وأردت الإدخال الأحدث، فرتّبها حسب التاريخ من الأحدث إلى الأقدم، ثم شغّل «إزالة التكرارات». وإذا أردت الصف الذي يحتوي على عنوان بريد إلكتروني مكتمل، فرتّب البيانات بحيث تأتي هذه الصفوف أولًا. الترتيب هنا جزء أساسي من عملية التنظيف، وليس إضافة اختيارية.

ما المقصود بالتطابق

يقارن Excel ما يظهر داخل الخلية، وليس ما هو مخزّن فعليًا. مثال من Microsoft: التاريخان 3/8/2006 وMar 8, 2006 يُعاملان كقيمتين مختلفتين، رغم أن التاريخ واحد. الأمر نفسه ينطبق على الأرقام المنسقة بطرق مختلفة أو النص الذي يحتوي على مسافة زائدة في نهايته. كما تشير المقالة الخاصة بالبحث عن التكرارات وإزالتها إلى أن الأعداد التي يعرضها Excel بعد ذلك قد تتضمن خلايا فارغة أو مسافات.

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

عندما يرفض الأمر التنفيذ

لا يمكنك إزالة التكرارات من بيانات تحتوي على تفاصيل تجميع (Outline) أو إجماليات فرعية. أزل التفاصيل والإجماليات الفرعية أولًا، ثم شغّل الأمر.

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

تنصح Microsoft بالتصفية أو التمييز أولًا، ثم الحذف. هذا يستغرق دقيقة واحدة ويجنّبك معظم الندم.

تمييز التكرارات باستخدام التنسيق الشرطي

  1. حدد الخلايا التي تريد التحقق منها.
  2. في تبويب الصفحة الرئيسية، افتح التنسيق الشرطي، ثم قواعد تمييز الخلايا، ثم القيم المكررة.
  3. اختر نمط التمييز، ثم حدد موافق.

ستُلوَّن الآن كل قيمة متكررة. لا يمكنك تطبيق هذه الطريقة على منطقة القيم في PivotTable. كما أن هذه الطريقة تفحص عمودًا واحدًا في كل مرة، لذلك لن يتم تمييز الصف الذي يتكرر عبر عدة أعمدة فقط. لتحقيق ذلك، ستحتاج إلى عمود مساعد.

تمييز الصفوف المكررة باستخدام عمود مساعد

يضع العمود المساعد القيمة TRUE أو FALSE بجوار كل صف. وهذا يتيح لك التصفية والمراجعة ثم الحذف.

  1. أدرج عمودًا بجوار بياناتك، وأضف عنوانًا مثل "مكرر؟".
  2. إذا كنت تتحقق من العمود A، فأدخل التالي في الخلية B2: =COUNTIF(A$2:A2,A2)>1
  3. اسحب الصيغة إلى الأسفل. في المرة الأولى التي تظهر فيها القيمة ستحصل على FALSE. وكل ظهور لاحق سيحصل على TRUE.
  4. صفِّ العمود المساعد لعرض قيم TRUE فقط. راجع تلك الصفوف، واحذفها إذا كانت مكررة فعلًا.

لأن النطاق A$2:A2 يتسع كلما نسخت الصيغة إلى الأسفل، فإن الإدخالات اللاحقة فقط هي التي يتم تمييزها، ويبقى الإدخال الأول دون تغيير. وهذا يتوافق مع ما تفعله «إزالة التكرارات».

للتحقق من عدة أعمدة في وقت واحد، أنشئ عمود مفتاح يدمج هذه الأعمدة: =A2&"|"&B2&"|"&C2. ثم شغّل COUNTIF على هذا المفتاح. ضع فاصلًا مثل الخط العمودي (|) بين الحقول. بدون فاصل، سيصبح "12" و"34" مع "1" و"234" كلاهما "1234"، وسيبدوان كأنهما السجل نفسه.

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

احصل على قائمة بدون تكرارات مع الاحتفاظ بالمصدر

في بعض الأحيان لا تريد حذف أي شيء. كل ما تحتاجه هو قائمة نظيفة لقائمة منسدلة أو ملخص أو استيراد. تناسب هنا ثلاثة خيارات.

الدالة UNIQUE

في Excel لـ Microsoft 365 وExcel 2024 وExcel 2021، تُرجع الصيغة =UNIQUE(A2:A100) كل قيمة مميزة من النطاق، ويتم انسكاب النتيجة إلى الخلايا أسفلها. وتذكر Microsoft أن الدالة متاحة أيضًا في Excel للويب وفي تطبيقات الجوال. بناء الجملة هو =UNIQUE(array,[by_col],[exactly_once]):

  • array هو النطاق المراد فحصه. إذا كان يحتوي على عدة أعمدة، فإن UNIQUE يقارن الصفوف كاملة.
  • by_col يأخذ القيمة TRUE إذا أردت مقارنة الأعمدة بدلًا من الصفوف. احذفه للحصول على المقارنة المعتادة بين الصفوف.
  • exactly_once يأخذ القيمة TRUE إذا أردت الصفوف التي تظهر مرة واحدة فقط في البيانات. إذا حذفته، ستحصل على كل صف مميز.

تتحدّث النتيجة عند تغيّر المصدر. إذا كان المصدر جدول Excel واستخدمت المراجع المنظمة، فإن نطاق الانسكاب يتغير حجمه تلقائيًا عند إضافة صفوف أو حذفها. وللحصول على قائمة مرتبة، غلّفها بالدالة: =SORT(UNIQUE(A2:A100)).

زوج الوسيطات الثاني أهم مما يظن كثيرون. فالصيغة =UNIQUE(A2:A100,,TRUE) تعطيك القيم التي تظهر مرة واحدة بالضبط، وهذا يختلف عن سؤال "إزالة النسخ الزائدة". فكّر أولًا فيما تحتاجه فعلًا.

هناك قيد واحد: إصدارات Excel الأقدم (2019 وما قبلها) لا تتضمن الدالة UNIQUE. وتذكر صفحة Microsoft الإصدارات المذكورة أعلاه فقط.

التصفية المتقدمة

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

  1. حدّد بياناتك.
  2. انتقل إلى Data > Advanced في مجموعة Sort & Filter.
  3. اختر نسخ إلى موقع آخر.
  4. أدخل خلية في المربع Copy to وفعّل Unique records only.
  5. حدّد OK.

تبقى بياناتك الأصلية في مكانها، وتظهر الصفوف الفريدة في الموقع الجديد.

نمط الصيغ الأقدم

إذا لم تتمكن من استخدام UNIQUE، فأدخل الصيغة =IF(COUNTIF($A$2:A2,A2)=1,A2,"") في عمود جديد واسحبها إلى الأسفل. ستظهر كل قيمة مرة واحدة، وتتحول التكرارات إلى سلاسل فارغة. انسخ العمود ثم الصقه كقيم، واحذف الخلايا الفارغة عبر التصفية. الطريقة مرهقة لكنها تعمل في كل مكان.

التعامل مع التطابقات الجزئية واختلاف حالة الأحرف

نادرًا ما تكون البيانات الحقيقية نسخًا متطابقة تمامًا. وهناك ثلاث حالات تتكرر باستمرار.

التكرارات التامة. تتطابق كل الأعمدة المحددة. والأمر يتعامل مع هذه الحالة دون مشكلة.

التطابقات الجزئية. يتكرر عمود المفتاح بينما تختلف حقول أخرى، مثل معرّف العميل نفسه مع عنوانين مختلفين. هنا يجب أن تقرر أي نسخة هي الصحيحة. رتّب البيانات بحيث تأتي النسخة الصحيحة أولًا، ثم أزِل التكرارات بناءً على عمود المفتاح فقط. أو ضع علامة على التكرارات باستخدام عمود مساعد وراجعها يدويًا. لا توجد أداة تستطيع أن تخبرك بالعنوان الصحيح.

الاختلافات في حالة الأحرف. يفرّق Power Query بين الحروف الكبيرة والصغيرة وفقًا لوثائق Microsoft، لذلك لا تُعد "Apple" و"apple" تكرارًا هناك. والحل المقترح هو تحويل العمود إلى أحرف كبيرة أو صغيرة باستخدام تحويل قبل إزالة التكرارات. لكن هذا يغيّر القيم المخزّنة، لذا احتفظ بالعمود الأصلي إذا كنت لا تزال بحاجة إلى الكتابة الدقيقة.

الأتمتة: Power Query وVBA

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

Power Query

إذا كانت بياناتك قادمة من ملف CSV أو قاعدة بيانات أو مصنف آخر، فأزِل التكرارات أثناء الاستيراد. Power Query يسجّل هذه الخطوة ويعيد تنفيذها عند كل تحديث.

  1. حمّل البيانات إلى Power Query Editor. إذا كانت موجودة بالفعل في ورقة عمل، فحدّد خلية داخل البيانات واختر Query > Edit، أو استخدم Data > Get Data لتحميل مصدر جديد.
  2. انقر على رأس العمود لتحديده. اضغط Shift أو Ctrl لتحديد أعمدة أخرى. لا يلزم أن تكون الأعمدة متجاورة.
  3. انتقل إلى الصفحة الرئيسية > إزالة الصفوف > إزالة التكرارات.
  4. أغلق النافذة وحمّل النتيجة.

تسرد صفحة Microsoft حول الاحتفاظ بالصفوف المكررة أو إزالتها في Power Query هذه الخطوات. وتستحق إرشاداتها بشأن التكرارات أن تُعرف: الأعمدة المحددة هي التي تحدد ما يُعد تكرارًا، ولا يضمن Power Query الاحتفاظ بالصف الأول من كل مجموعة. وإذا كان الصف الذي يبقى مهمًا، فلا تعتمد على الفرز وحده. تشير Microsoft إلى إرشاداتها حول "Preserve sort" في مقالة المشكلات الشائعة الخاصة بـ Power Query. ويؤدي خيار مرتبط، هو الاحتفاظ بالتكرارات، العكس تمامًا، إذ يُبقي فقط الصفوف التي تظهر قيمها أكثر من مرة، وهي طريقة سريعة لمراجعة قائمة ما.

إذا دمجت جدولين، فكّر في المكان الذي ينبغي أن تقع فيه إزالة التكرارات. فإزالة التكرارات من كل مصدر قبل الدمج تُبقي الدمج صغيراً ويمكن التنبؤ بنتيجته. أما إزالتها بعد الدمج فتنظّف ما أنشأه الدمج. اختر بناءً على مصدر التكرارات لديك، وتحقق من عدد الصفوف في المعاينة قبل التحميل.

ماكرو VBA

إذا كررت التنظيف نفسه على المصنفات التي تفتحها يومياً، فالماكرو خيار متاح. يمتلك كائن Range طريقة باسم RemoveDuplicates، موثقة في مرجع VBA من Microsoft. تأخذ هذه الطريقة الأعمدة المراد مقارنتها، وتحدد ما إذا كان الصف الأول يحتوي على عناوين. ومثال Microsoft الخاص بها هو:

ActiveSheet.Range("A1:C100").RemoveDuplicates Columns:=Array(1,2), Header:=xlYes

يقارن هذا السطر العمودين الأول والثاني في النطاق A1:C100، ويعامل الصف الأول كعنوان. للاستخدام، اضغط Alt+F11، وأدرج وحدة نمطية (Module)، والصق السطر داخل Sub، ثم احفظ الملف كمصنف يدعم الماكرو بامتداد .xlsm. وشغّله على نسخة من الملف أولاً. فالماكرو يحذف بالدائم تماماً كما يفعل الأمر، ولن يعيد Ctrl+Z الصفوف المحذوفة. وقد يحظر فريق تقنية المعلومات لديك الماكرو أيضاً، لذا تحقق من ذلك قبل أن تبني شيئاً لا يستطيع زملاؤك تشغيله. وإذا أردت التعمق أكثر في اللغة، فصفحة VBA تجمع مواد ذات صلة.

Excel للويب والجوال

تسرد مقالات Microsoft حول إزالة التكرارات نسخ Excel المكتبية فقط (Microsoft 365 و2024 و2021 و2019 و2016) ولا تذكر شيئاً عن الويب أو تطبيقات الجوال. ولا تصف Microsoft أمر Remove Duplicates لتلك الإصدارات، لذا لا تبنِ عليه أي عملية. ما توثقه Microsoft للويب والجوال هو الدالة UNIQUE، فاستخدمها للحصول على قائمة نظيفة على تلك الأجهزة، ونفّذ الحذف الدائم على نسخة سطح المكتب.

الأخطاء الشائعة

  • تشغيل الأمر دون نسخة احتياطية. بمجرد إغلاق الملف تكون الصفوف قد ضاعت نهائياً.
  • تحديد الأعمدة الخاطئة. فاستبعاد عمود يغيّر الصفوف التي تُعتبر مكررة، ويُحذف الصف بأكمله وليس الخلية المكررة فقط.
  • نسيان الفرز أولاً، ثم التساؤل عن سبب بقاء السجل القديم بدلاً من الجديد.
  • مقارنة خلايا تبدو متشابهة لكنها منسقة بشكل مختلف، مثل التواريخ المكتوبة بطريقتين، أو النصوص التي تحتوي على مسافات زائدة في نهايتها.
  • محاولة تشغيل الأمر على بيانات بها تجميع أو مجاميع فرعية. أزل هذه العناصر أولاً.
  • اعتبار UNIQUE مع تعيين exactly_once إلى TRUE وسيلةً لحذف النسخ الزائدة. فهي تُرجع فقط القيم التي تظهر مرة واحدة، لذا تختفي القيم المتكررة من النتيجة تماماً.

موضوعات ذات صلة للاستكشاف

  • أبرز التكرارات باستخدام التنسيق الشرطي، وعلّم الصفوف المتكررة بعمود مساعد باستخدام COUNTIF قبل حذف أي شيء. وقد تناولت المقالة كلتا الطريقتين أعلاه.
  • نظّف البيانات عند الاستيراد. تحفظ خطوة في Power Query التكرارات خارج كل تحديث، وتعمل بكفاءة مع ملفات CSV والأنظمة الأخرى.
  • امنع التكرار عند الإدخال. يمكن إعداد التحقق من البيانات باستخدام صيغة مخصصة لمنع المستخدمين من كتابة قيمة موجودة مسبقاً. اختبر ذلك على ورقة صغيرة أولاً.
  • أتمتة المهام المتكررة باستخدام ماكرو، وتعلّم كيفية تشغيله بأمان على نسخة من الملف.
  • دمج البيانات من عدة مصادر، وهي المصدر الذي تأتي منه التكرارات غالباً. خطط لترتيب التنظيف والدمج.

الخطوة التالية

قبل عملية التنظيف التالية، انسخ البيانات، وأبرز التكرارات بالتنسيق الشرطي، واعرف عددها. ثم شغّل Remove Duplicates على النسخة، وقارن العدد بالأرقام التي يعرضها Excel.

Entities in this article

Microsoft Excel Power Query Visual Basic for Applications (VBA)

Related articles

RSS