Note: The other languages of the website are Google-translated. Back to English

كيفية حذف جميع الصفوف التي تحتوي على نص معين داخل عمود في أوراق Google؟

لنفترض أن لديك مجموعة من البيانات في ورقة google ، الآن ، تريد حذف الصفوف بناءً على قيم الخلية في عمود. على سبيل المثال ، أريد حذف جميع الصفوف التي تحتوي على النص "مكتمل" في العمود ج. وفي هذه المقالة ، سأتحدث عن كيفية حلها في أوراق Google.

احذف جميع الصفوف التي تحتوي على نص معين داخل عمود مع رمز البرنامج النصي


احذف جميع الصفوف التي تحتوي على نص معين داخل عمود مع رمز البرنامج النصي

لإزالة جميع الصفوف التي تتضمن نصًا محددًا في عمود ، يمكن أن تقدم لك التعليمات البرمجية النصية التالية خدمة ، يرجى القيام بذلك على النحو التالي:

1. انقر الأدوات > محرر النص، انظر لقطة الشاشة:

doc حذف الصفوف التي تحتوي على 1

2. في نافذة الكود المفتوحة الجديدة ، انسخ والصق الكود التالي في نافذة الكود الفارغة ، انظر لقطة الشاشة:

function deleteRows() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName('delete containing');
  var r = s.getRange('C:C');
  var v = r.getValues();
  for(var i=v.length-1;i>=0;i--)
    if(v[0,i]=='Complete')
      s.deleteRow(i+1);
};

doc حذف الصفوف التي تحتوي على 2

ملاحظة: في الكود أعلاه ، "حذف يحتوي على"هو اسم الورقة الذي يحتوي على البيانات التي تريد حذفها ،"ج: ج"هو العمود الذي يحتوي على نص محدد تريد الحذف منه ،"كامل"هو النص المحدد الذي تريد حذف الصفوف بناءً عليه ، يرجى تغييرها حسب حاجتك.

3. ثم احفظ هذا الرمز ، ثم انقر فوق يجري في نافذة الكود لتنفيذ كود البرنامج النصي هذا ، انظر الصورة:

doc حذف الصفوف التي تحتوي على 3

4. وجميع الصفوف التي تحتوي على النص المحدد "مكتمل" تم حذفها دفعة واحدة ، انظر الصورة:

doc حذف الصفوف التي تحتوي على 4


احذف جميع الصفوف التي تحتوي على نص معين في ورقة عمل Excel:

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

doc حذف الصفوف التي تحتوي على 5

كوتولس ل إكسيل: مع أكثر من 300 وظيفة إضافية مفيدة في Excel ، يمكنك تجربتها مجانًا دون قيود خلال 30 يومًا. تنزيل وتجربة مجانية الآن!


أفضل أدوات إنتاجية المكتب

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2021 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (15)
لا يوجد تقييم. كن أول من يقيم!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا تفعل شيئًا على الإطلاق ، لست متأكدًا من كيفية إصلاح ذلك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا،
هل يمكنني تعديل الكود أدناه لحذف خلية ملونة بدلاً من نص معين:


وظيفة deleteRows () {
var ss = SpreadsheetApp.getActiveSpreadsheet () ،
var s = ss.getSheetByName ('حذف يحتوي على') ؛
var r = s.getRange ('C: C') ؛
var v = r.getValues ​​() ،
لـ (var i = v.length-1 ؛ i> = 0 ؛ i--)
إذا (v [0، i] == "مكتمل")
s.deleteRow (i + 1) ؛
};
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا،
يمكن تعديل الكود أدناه لحذف الصف الملون بدلاً من النص


وظيفة deleteRows () {
var ss = SpreadsheetApp.getActiveSpreadsheet () ،
var s = ss.getSheetByName ('حذف يحتوي على') ؛
var r = s.getRange ('C: C') ؛
var v = r.getValues ​​() ،
لـ (var i = v.length-1 ؛ i> = 0 ؛ i--)
إذا (v [0، i] == "مكتمل")
s.deleteRow (i + 1) ؛
};
تم تصغير هذا التعليق بواسطة المشرف على الموقع
يبدو أن هذا يعمل فقط إذا كانت الخلية تحتوي على النص المحدد فقط. أريد حذف صفوف تحتوي على خلايا تحتوي على نص آخر بما في ذلك النص المحدد. لدي مجموعة من عناوين البريد الإلكتروني وأريد التخلص من الصفوف التي تحتوي على عناوين Gmail ، لذلك أبحث عن خلايا تحتوي على "gmail.com".

لا حظ هنا.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
استبدل هذا السطر: إذا (v [0، i] == "مكتمل")
مع هذا: if (v [0، i] .indexOf ('gmail')> -1)
تم تصغير هذا التعليق بواسطة المشرف على الموقع
حاولت ذلك. ما زالت لا تعمل.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا يناسبني أيضًا.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لماذا استخدام عامل الفاصلة في v [0، i]؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
اكتشفت ذلك ، ولكن واجهت مشكلة في جعلها تعمل مع الأوراق الأكبر حجمًا نظرًا لتجاوزها الحد الأقصى لوقت التشغيل. في الأساس ، كانت البيانات التي تم إرجاعها لـ "v" من نوع "كائن" ، لذا كان عليك أن تقوم بـ JSON.stringify () أولاً من أجل اكتشاف القيم.
وظيفة deleteRows () {
var ss = SpreadsheetApp.getActiveSpreadsheet () ،
var s = ss.getSheetByName ('REPLACE WITH NAME OF SHEET') ؛
var r = s.getRange ('C: C') ؛ // استبدل "C: C" ليكون العمود الذي تريد استبداله مثل start: end
var v = r.getValues ​​() ،
لـ (var i = v.length-1 ؛ i> = 0 ؛ i--) {
إذا كان (JSON.stringify (v [i]). يتضمن ('استبدال مع CHAR الذي تريد استبداله')) {
s.deleteRow (i + 1) ؛
}
}
};
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لقد أصلحت هذا بنفسي باستخدام ما يلي.
سبب عدم عمله هو أن v تُرجع مصفوفة تحتوي على عنصر واحد فقط [0]
لقد استخدمت أيضًا Javascript .includes () بحيث يمكنك حذف السجلات التي "تحتوي" على هذا النص.


وظيفة deleteRows () {
var ss = SpreadsheetApp.getActiveSpreadsheet () ،
var s = ss.getSheetByName ('افتراضي') ،
var r = s.getRange ('A: A') ؛
var v = r.getValues ​​() ،
لـ (var i = v.length-1 ؛ i> = 1 ؛ i--)
if (v [i] [0]. include ("appleid.com")) {
console.log ('الصف المحذوف' + v [i] [0]) ؛
s.deleteRow (i + 1) ؛
}
};
تم تصغير هذا التعليق بواسطة المشرف على الموقع
عمل رائع ، العمل بسلاسة.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا جزيلا لك. يعمل بشكل رائع بالنسبة لي
تم تصغير هذا التعليق بواسطة المشرف على الموقع
كيف يمكنني جعل هذا أكثر تنوعًا؟

لنفترض أنني أنشأت قائمة بالكلمات المدرجة في القائمة السوداء في الورقة 1 وأريد حذف جميع الصفوف في الورقة 2 التي تحتوي على تلك الكلمات في العمود أ.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أي حظ مع هذا ؟؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
Bonjour ، نص j'aime beaucoup ce. Moi je cherche un script qui permet de supprimer automatiquement tous les éléments ou contenus d'une Colonne après chaque 1 min. باس سوبريمير لا كولون ، ميز لو كونتينو دي لا كولون. بوفيز فو معدير؟
لا توجد تعليقات منشورة هنا حتى الآن
اترك تعليقاتك
النشر كضيف
×
قيم المنشور:
0   الشخصيات
المواقع المقترحة

تواصل معنا

حقوق التأليف والنشر © 2009 - شبكة الاتصالات العالمية.extendoffice.com. | كل الحقوق محفوظة. مشغل بواسطة ExtendOffice. | | خريطة الموقع
Microsoft وشعار Office هما علامتان تجاريتان أو علامتان تجاريتان مسجلتان لشركة Microsoft Corporation في الولايات المتحدة و / أو دول أخرى.
محمي بواسطة Sectigo SSL