Excel: identifica celle con valore duplicato in una cella e uguale a 0 nella cella successiva


1

Sto cercando di rimuovere le code di stampa inattive da un server di stampa. Ogni stampante ha una coda separata per ogni vassoio. Il problema è che voglio solo rimuovere le code su cui non è attiva alcuna attività qualunque dei suoi vassoi corrispondenti

Per esempio:

Column A         Column B    Column C     Column D
Queue Name       Host Name   Page Count   Inactive?
Printer1Tray1    printer01   1000         FALSE
Printer2Tray1    printer02   2000         FALSE
Printer2Tray2    printer02   0            FALSE
Printer3Tray1    printer03   0            TRUE
Printer3Tray2    printer03   0            TRUE


Da questo esempio, ho bisogno della colonna D per mostrare una dichiarazione true / false che tutte le code con un determinato nome host hanno un conteggio di pagina pari a 0. Il risultato sarebbe TRUE per le code con il nome host printer03, in quanto entrambe hanno un numero di pagine di 0. L'istruzione sarebbe falsa per le code con nomi host printer01 o printer02, in quanto il conteggio delle pagine è maggiore di 0 per almeno una coda correlata.

Mi rendo conto che mettere questo in parole è difficile (almeno per me). Per favore fatemi sapere se posso spiegare meglio.

Grazie a tutti in anticipo!

Risposte:


1

La formula da utilizzare nella colonna D ( D3 ) sarebbe:
=IF(SUMIF($B:$B, B3, $C:$C)>0,FALSE,TRUE)

Si SUM il numero nella colonna C IF colonna B corrisponde al valore di colonna B di questa riga. E se SUM è maggiore di 0, si dice FALSO.

Se vuoi essere in grado di utilizzare la formula per le righe vuote e deve essere compilata solo se c'è qualcosa nelle righe precedenti, puoi utilizzare:
=IF(SUMIF($B:$B, B2, $C:$C)>0,FALSE,IF(B2="","",TRUE))

Ecco un file di lavoro con la formula data: https://1drv.ms/x/s!Ao8EzDmtlA0JhnHYC5qAtgxgK3Q6


1
Non hai mai bisogno di dire =IF( something ,  TRUE,  FALSE) in Excel; basta dire = something . Allo stesso modo, =IF( something ,  FALSE,  TRUE) è altrettanto cattivo; tutto quello che serve è =NOT( something ) - in questo caso, =NOT(SUMIF($B:$B, B2, $C:$C)>0). Ma di solito puoi semplificarlo ancora di più; in questo caso, a =SUMIF($B:$B, B2, $C:$C)=0.
Scott
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.