Google स्प्रेडशीट के लिए समान कॉलम में डुप्लिकेट मान होने पर सेल को कैसे हाइलाइट करें?


270

यदि एक ही कॉलम में डुप्लिकेट मान है तो मैं Google स्प्रेडशीट हाइलाइट सेल के लिए सूत्र ढूंढ रहा हूं

क्या कोई इस क्वेरी के लिए मेरी सहायता कर सकता है?

जवाबों:


473

इसे इस्तेमाल करे:

  1. पूरे कॉलम का चयन करें
  2. प्रारूप पर क्लिक करें
  3. सशर्त स्वरूपण पर क्लिक करें
  4. अन्य नियम जोड़ें पर क्लिक करें (या मौजूदा / डिफ़ॉल्ट को संपादित करें)
  5. यदि स्वरूपित सेल सेट करें :Custom formula is
  6. इसके लिए मान सेट करें: =countif(A:A,A1)>1(या Aअपने चुने हुए कॉलम में परिवर्तन करें)
  7. स्वरूपण शैली सेट करें।
  8. सुनिश्चित करें कि सीमा आपके कॉलम (जैसे, A1:A100) पर लागू होती है ।
  9. क्लिक करें हो गया

A1 में लिखी गई कोई भी चीज़: A100 कोशिकाओं की जाँच की जाएगी, और यदि कोई डुप्लिकेट है (एक से अधिक बार होता है) तो यह रंगीन होगा।

,दशमलव विभाजक के रूप में अल्पविराम ( ) का उपयोग करने वाले स्थानों के लिए , तर्क विभाजक सबसे अधिक संभावना एक अर्ध-उपनिवेश ( ;) है। यही है, कोशिश करें: =countif(A:A;A1)>1इसके बजाय।

कई कॉलम के लिए, का उपयोग करें countifs


50
नए Google पत्रक के रूप में आप बहु-स्तंभ संस्करण COUNTIFS का उपयोग कर सकते हैं। इस तरह का उपयोग करें यदि डुप्लिकेट अधिक स्तंभों का एक संयोजन है=COUNTIFS(A:A; A1; B:B; B1)>1
क्रिश्चियन वेस्टेरबेक

6
;मेरे लिए "अमान्य सूत्र" त्रुटि के अंतिम परिणाम। बस इसे हटाकर चाल चली गई। इसके अलावा सावधान रहें: आप जिस सेल को 2 के तर्क के रूप में निर्दिष्ट करते हैं countif, वह आपके द्वारा चुनी गई सीमा का पहला सेल होना चाहिए।
edelans

11
यह काम करता हैं। पर क्यों? मान लेना A1 मान के लिए एक मानदंड है, क्या यह सूत्र A1 की श्रेणी के सभी कक्षों की तुलना नहीं करता है?
mafonya

9
@mafonya, कस्टम फॉर्मूला एक सामान्य फॉर्मूला है जिसे पहली सेल में आवेदन करने के रूप में पढ़ा जाना चाहिए। सभी संदर्भों को चयनित श्रेणी में प्रत्येक और प्रत्येक सेल के लिए अनुकूलित किया जाएगा। उदाहरण के लिए, सेल B2 की जाँच करते समय सूत्र आंतरिक रूप से बन जाएगा =countif(B:B,B2)>1। यह पूर्ण बनाम सापेक्ष सेल संदर्भों का उपयोग करते समय किसी को बहुत उन्नत स्वरूपण करने की अनुमति देता है।
asoundmove

14
एक साइड नोट के रूप में, यदि आप इसे पूरे कॉलम पर लागू करना चाहते हैं, तो आप फॉर्मूला = काउंटिफ (ए: ए, ए: ए)> 1 का उपयोग कर सकते हैं। इसका मतलब यह है कि यह सेल A1 पर लागू नहीं होगा, लेकिन होगा ए 4 और ए 8 यदि वे समान (डुप्लिकेट) हैं। अब, A4 और A8 दोनों को स्वरूपित किया जाएगा।
ब्लैंकिंग

68

जबकि ज़ोल्ले का जवाब सवाल के लिए पूरी तरह से सही है, यहाँ किसी भी सीमा के लिए एक अधिक सामान्य समाधान है, साथ ही स्पष्टीकरण:

    =COUNTIF($A$1:$C$50, INDIRECT(ADDRESS(ROW(), COLUMN(), 4))) > 1

कृपया ध्यान दें कि इस उदाहरण में मैं सीमा का उपयोग करूंगा A1:C50। पहले पैरामीटर ( $A$1:$C$50) को उस सीमा के साथ प्रतिस्थापित किया जाना चाहिए जिस पर आप डुप्लिकेट को उजागर करना चाहते हैं!


डुप्लिकेट को उजागर करने के लिए:

  1. उस संपूर्ण सीमा का चयन करें जिस पर डुप्लिकेट अंकन चाहते हैं।
  2. मेनू पर: Format>Conditional formatting...
  3. के तहत Apply to range, उस सीमा का चयन करें, जिस पर नियम लागू किया जाना चाहिए।
  4. में Format cells if, Custom formula isड्रॉपडाउन पर चुनें ।
  5. पाठ बॉक्स में दिए गए सूत्र को सम्मिलित करें, चरण चरण (3) से मेल खाते को समायोजित करें।

यह काम क्यों करता है?

COUNTIF(range, criterion), की हर कोशिका की तुलना करेंगे rangeकरने के लिए criterionहै, जो फार्मूले की तरह ही संसाधित किया जाता है। यदि कोई विशेष ऑपरेटर प्रदान नहीं किया जाता है, तो यह दिए गए सेल के साथ सीमा में प्रत्येक सेल की तुलना करेगा, और नियम से मेल खाने वाली कोशिकाओं की संख्या लौटाएगा (इस मामले में, तुलना)। हम एक निश्चित सीमा ( $संकेतों के साथ ) का उपयोग कर रहे हैं ताकि हम हमेशा पूरी सीमा देखें।

दूसरा ब्लॉक, INDIRECT(ADDRESS(ROW(), COLUMN(), 4))वर्तमान सेल की सामग्री लौटाएगा। यदि इसे सेल के अंदर रखा जाता है, तो डॉक्स परिपत्र निर्भरता के बारे में रोया होगा, लेकिन इस मामले में, सूत्र का मूल्यांकन किया जाता है जैसे कि यह सेल में था, इसे बदले बिना।

ROW()और क्रमशः दिए गए सेल COLUMN()की पंक्ति संख्या और कॉलम संख्या वापस कर देगा । यदि कोई पैरामीटर प्रदान नहीं किया गया है, तो वर्तमान सेल लौटा दी जाएगी (यह 1-आधारित है, उदाहरण के लिए, B33 के लिए लौटेगा ROW(), और 2 के लिए COLUMN())।

फिर हम उपयोग करते हैं: ADDRESS(row, column, [absolute_relative_mode])एक सेल संदर्भ के लिए संख्यात्मक पंक्ति और स्तंभ का अनुवाद करने के लिए (जैसे B3, याद रखें, जब हम सेल के संदर्भ में होते हैं, तो हमें पता नहीं है कि यह पता या सामग्री है, और हमें इसकी तुलना करने के लिए सामग्री की आवश्यकता है)। तीसरा पैरामीटर स्वरूपण की देखभाल करता है, और 4स्वरूपण INDIRECT()पसंद लौटाता है ।

INDIRECT(), सेल संदर्भ लेगा और उसकी सामग्री लौटाएगा। इस मामले में, वर्तमान सेल की सामग्री। फिर शुरू करने के लिए, COUNTIF()हमारे खिलाफ हर रेंज में परीक्षण करेंगे, और गिनती वापस करेंगे।

अंतिम चरण हमारे सूत्र को एक बूलियन लौटा रहा है, इसे एक तार्किक अभिव्यक्ति बनाकर COUNTIF(...) > 1:। इसका > 1उपयोग किया जाता है क्योंकि हम जानते हैं कि हमारे समान कम से कम एक सेल है। यह हमारी कोशिका है, जो कि सीमा में है, और इस प्रकार इसकी तुलना खुद से की जाएगी। तो एक डुप्लिकेट को इंगित करने के लिए, हमें अपने मेल खाने वाले 2 या अधिक कोशिकाओं को खोजने की आवश्यकता है।


सूत्रों का कहना है:

  • डॉक्स संपादक सहायता: COUNTIF ()
  • डॉक्स संपादक सहायता: संकेत ()
  • डॉक्स संपादक सहायता: ADDRESS ()
  • डॉक्स संपादक सहायता: ROW ()
  • डॉक्स संपादकों की मदद: COLUMN ()

4
अफसोस की बात है कि यह मेरे लिए काम नहीं करता है। यह बहुत कुछ डुप्लिकेट होने के बावजूद कुछ भी उजागर करने में विफल रहता है। यकीन नहीं क्यों, यह एक अच्छा समाधान की तरह लग रहा है।
JVC

यह मेरे लिए काम करता है, लेकिन खाली कोशिकाओं को भी उजागर करता है। क्या खाली को बाहर करने का एक तरीका है?
गिलेस्पीजा

1
@ अमांडा - हाँ, थोड़ी रचनात्मकता और यह संभव है। मैं सप्ताह के लिए AFK हूं, लेकिन मुझे एक सप्ताह में पकड़ लो। और एक आधा और मैं मदद करने के लिए खुश हूं। विचार एक AND स्टेटमेंट (उपयोग करके *) और दूसरा चेक बनाने के लिए है, इसलिए की तर्ज पर ((COUNTIF(...))*(NOT(ISBLANK(INDIRECT(...current cell...)))))। मैं मोबाइल पर सबसे अच्छा कर सकता हूं। :)
स्वार्थी

2
वास्तव में यह आवश्यक समाधान है। यह सिर्फ डुप्लिकेट की पहचान करने के लिए एक HASHMAP की तरह काम करता है।
एके

1
आकर्षक काम करता है, धन्यवाद @Selfish! मुझे समय बचाया। नोट: केवल परिवर्तन की चीज होनी चाहिए $A$1:$C$50- प्रश्न के तहत कॉलम के अनुसार। मैं इस तरह के अधिक सामान्य दृष्टिकोण को जौली की तुलना में अधिक पसंद करता हूं।
बोल्डनिक

28

@Zolley का उत्तर सही है। बस एक Gif जोड़ने और संदर्भ के लिए कदम।

  1. गोटो मेनू Format > Conditional formatting..
  2. खोज Format cells if..
  3. =countif(A:A,A1)>1फ़ील्ड में जोड़ेंCustom formula is
    • नोट: Aअपने कॉलम के साथ पत्र को बदलें ।

यहां छवि विवरण दर्ज करें


2
डुप्लिकेट को उजागर करने के बाद मैं उन्हें रंग से कैसे फ़िल्टर कर सकता हूं?
फैसल

@ स्क्रिप्ट या एडऑन के साथ केवल फैसल
खिलाडी 0

27

"टेक्स्ट कॉन्टेन्स" ड्रॉपडाउन मेनू से "कस्टम फॉर्मूला है:" का चयन करें, और लिखें: "= countif (A: A, A1)> 1" (बिना उद्धरण के)

मैंने बिल्कुल वैसा ही किया जैसा कि ज़ॉले ने प्रस्तावित किया था , लेकिन इसमें छोटे सुधार किए जाने चाहिए: "टेक्स्ट कॉन्टेन्स " के बजाय "कस्टम फॉर्मूला" का उपयोग करें । और फिर सशर्त प्रतिपादन काम करेगा।

मेनू से स्क्रीनशॉट


1
मैंने आपको निराश नहीं किया (मुझे आज यह सवाल मिला), लेकिन यहाँ आपके अनुरोध पर एक टिप्पणी है, जैसा आपने अनुरोध किया था। मुझे नहीं लगता कि सूत्र में अर्धविराम आवश्यक है। इसके अलावा, मैं अभी भी Google शीट में सशर्त स्वरूपण पैनल में एक ड्रॉप-डाउन देखता हूं। कम से कम, मैं चयन विकल्प पर क्लिक करता हूं, और विकल्पों का एक लंबा सेट दिखाई देता है, जिसे मैं आमतौर पर ड्रॉप-डाउन मेनू कहता हूं। विकल्प जो शुरू में ड्रॉप-डाउन में दिखाई देता है वह अक्सर होता है Text Contains, इसलिए उपयोगकर्ता ड्रॉपडाउन मेनू तक पहुंचने के लिए आमतौर पर क्लिक करता है।
पॉल डे बैरोस

धन्यवाद पॉल, आपकी टिप्पणी के लिए। शायद मुझे गलत समझा गया: मैं समझ गया कि "टेक्स्ट कॉन्टेंस" (या "फॉर्मेट सेल इफ ...") में एक बच्चा ड्रॉप-डाउन मेनू है "कस्टम फॉर्मूला है:"। इसके अलावा "टेक्स्ट कॉन्टेन्स" का एक समान विकल्प मूल्य होना चाहिए, न कि "= गणक (ए: ए, ए 1)> 1"। " वास्तव में यह एक और दृष्टिकोण है।
Shurik

11

हाइलाइट डुप्लिकेट (स्तंभ C में):

=COUNTIF(C:C, C1) > 1

स्पष्टीकरण: C1यहाँ सी में पहली पंक्ति का संदर्भ नहीं दिया गया है। क्योंकि इस फॉर्मूले का मूल्यांकन एक सशर्त प्रारूप नियम द्वारा किया जाता है, इसके बजाय, जब यह देखने के लिए कि यह लागू होता है, तो सूत्र की जाँच की जाती है, C1प्रभावी रूप से पंक्ति में वर्तमान में मूल्यांकन किया जा रहा है। देखें कि क्या हाइलाइट लागू किया जाना चाहिए। ( तो यह अधिक पसंद है INDIRECT(C &ROW()), अगर आपके लिए इसका मतलब है! )। अनिवार्य रूप से, एक सशर्त प्रारूप सूत्र का मूल्यांकन करते समय, पंक्ति 1 को संदर्भित करने वाली किसी भी चीज़ का मूल्यांकन उस पंक्ति के विरुद्ध किया जाता है, जो सूत्र के विरुद्ध चल रही है। ( और हां, यदि आप C2 का उपयोग करते हैं, तो आप नियम को वर्तमान में मूल्यांकन किए जा रहे नीचे पंक्ति की स्थिति की जांच करने के लिए कह रहे हैं। )

तो यह कहता है, जो कुछ भी है C1(वर्तमान सेल का मूल्यांकन किया जा रहा है) की घटनाओं को गिनें जो पूरे कॉलम में हैं Cऔर यदि उनमें से 1 से अधिक है (यानी मान में डुप्लिकेट है) तो: हाइलाइट लागू करें ( क्योंकि सूत्र , कुल मिलाकर, मूल्यांकन करता हैTRUE )।

केवल पहले डुप्लिकेट को हाइलाइट करें:

=AND(COUNTIF(C:C, C1) > 1, COUNTIF(C$1:C1, C1) = 1)

स्पष्टीकरण: यह केवल हाइलाइट है यदि दोनों COUNTIFs TRUE(वे अंदर दिखाई देते हैं AND())।

मूल्यांकन किया जाने वाला पहला शब्द (a COUNTIF(C:C, C1) > 1) पहले उदाहरण के समान सटीक है; यह TRUEकेवल तभी है जो कुछ भी C1एक डुप्लिकेट में है। ( याद रखें कि C1प्रभावी ढंग से संदर्भित वर्तमान पंक्ति को यह देखने के लिए जांचा जा रहा है कि क्या इसे हाइलाइट किया जाना चाहिए )।

दूसरा शब्द ( COUNTIF(C$1:C1, C1) = 1) समान दिखता है लेकिन इसके तीन महत्वपूर्ण अंतर हैं:

यह पूरे कॉलम को नहीं खोजता है C(जैसे पहले वाला करता C:Cहै:), लेकिन इसके बजाय यह पहली पंक्ति से खोज शुरू करता है: C$1 ( $यह शब्द पंक्ति में शाब्दिक रूप से देखने के लिए है 1, जो भी पंक्ति का मूल्यांकन नहीं किया जा रहा है)।

और फिर यह वर्तमान पंक्ति में मूल्यांकन का मूल्यांकन रोक देता है C1

अंत में यह कहता है = 1

तो, यह केवल तभी होगा TRUEजब वर्तमान में मूल्यांकन की जाने वाली पंक्ति के ऊपर कोई डुप्लिकेट नहीं हैं (इसका अर्थ है कि यह डुप्लिकेट में से पहला होना चाहिए)।

उस पहले शब्द के साथ संयुक्त (जो केवल तभी होगा TRUEजब इस पंक्ति में डुप्लिकेट है) इसका मतलब केवल पहली घटना को उजागर किया जाएगा।

दूसरे और बाद में डुप्लिकेट हाइलाइट करें:

=AND(COUNTIF(C:C, C1) > 1, NOT(COUNTIF(C$1:C1, C1) = 1), COUNTIF(C1:C, C1) >= 1)

स्पष्टीकरण: पहली अभिव्यक्ति हमेशा की तरह ही होती है ( TRUEयदि वर्तमान में मूल्यांकन की गई पंक्ति बिल्कुल एक डुप्लिकेट है)।

दूसरा शब्द बिलकुल पिछले के समान है, सिवाय इसके कि यह नकारात्मक है: इसके NOT()चारों ओर यह है। तो यह पहली घटना को नजरअंदाज करता है।

अंत में तीसरा शब्द 2, 3 डुप्लिकेट उठाता है, COUNTIF(C1:C, C1) >= 1वर्तमान में मूल्यांकन की गई पंक्ति ( C1में C1:C) पर खोज रेंज शुरू करता है । तब यह केवल इस पर मूल्यांकन करता है TRUE(हाइलाइट लागू करें) यदि इस एक (या इस एक सहित) के नीचे एक या अधिक डुप्लिकेट हैं: >= 1(यह >=सिर्फ नहीं होना चाहिए >अन्यथा अंतिम डुप्लिकेट को अनदेखा किया जाता है)।


3

मैंने सभी विकल्पों की कोशिश की और कोई भी काम नहीं किया।

केवल Google ऐप स्क्रिप्ट्स ने मेरी मदद की।

स्रोत: https://ctrlq.org/code/19649-find-duplicate-rows-in-google-sheets

अपने दस्तावेज़ के शीर्ष पर

1.- टूल्स> स्क्रिप्ट एडिटर पर जाएं

2.- अपनी स्क्रिप्ट का नाम सेट करें

3.- इस कोड को पेस्ट करें:

function findDuplicates() {
  // List the columns you want to check by number (A = 1)
  var CHECK_COLUMNS = [1];

  // Get the active sheet and info about it
  var sourceSheet = SpreadsheetApp.getActiveSheet();
  var numRows = sourceSheet.getLastRow();
  var numCols = sourceSheet.getLastColumn();

  // Create the temporary working sheet
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var newSheet = ss.insertSheet("FindDupes");

  // Copy the desired rows to the FindDupes sheet
  for (var i = 0; i < CHECK_COLUMNS.length; i++) {
    var sourceRange = sourceSheet.getRange(1,CHECK_COLUMNS[i],numRows);
    var nextCol = newSheet.getLastColumn() + 1;
    sourceRange.copyTo(newSheet.getRange(1,nextCol,numRows));
  }

  // Find duplicates in the FindDupes sheet and color them in the main sheet
  var dupes = false;
  var data = newSheet.getDataRange().getValues();
  for (i = 1; i < data.length - 1; i++) {
    for (j = i+1; j < data.length; j++) {
      if  (data[i].join() == data[j].join()) {
        dupes = true;
        sourceSheet.getRange(i+1,1,1,numCols).setBackground("red");
        sourceSheet.getRange(j+1,1,1,numCols).setBackground("red");
      }
    }
  }

  // Remove the FindDupes temporary sheet
  ss.deleteSheet(newSheet);

  // Alert the user with the results
  if (dupes) {
    Browser.msgBox("Possible duplicate(s) found and colored red.");
  } else {
    Browser.msgBox("No duplicates found.");
  }
};

4.- बचाओ और भागो

3 सेकंड से भी कम समय में, मेरी डुप्लिकेट पंक्ति रंगीन थी। बस स्क्रिप्ट को कॉपी-पेस्ट करें।

यदि आप Google ऐप्स स्क्रिप्ट के बारे में नहीं जानते हैं, तो यह लिंक आपकी मदद कर सकते हैं:

https://zapier.com/learn/google-sheets/google-apps-script-tutorial/

https://developers.google.com/apps-script/overview

आशा है कि ये आपकी मदद करेगा।


क्या इस कोड को केवल पूर्ण पंक्ति के बजाय लाल रंग के साथ कॉलम में डुप्लिकेट फ़ील्ड को उजागर करने के लिए संशोधित किया जा सकता है?
अमृत
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.