Udostępnij za pośrednictwem


Jak używać logicznej instrukcji AND lub OR w instrukcji SUM+IF w programie Excel

Podsumowanie

W programie Microsoft Excel, jeśli używasz funkcji logicznych AND i/lub LUB wewnątrz instrukcji SUM+IF, aby przetestować zakres dla więcej niż jednego warunku, może nie działać zgodnie z oczekiwaniami. Zagnieżdżona instrukcja IF zapewnia tę funkcję; Jednak w tym artykule omówiono drugą, prostszą metodę, która używa następujących formuł.

W przypadku warunków AND

=SUM(IF(Test1*Test2*...*Testn))

W przypadku warunków OR

=SUM(IF(Test1+Test2+...+Testn))

Więcej informacji

Użyj instrukcji SUM+IF, aby zliczyć liczbę komórek w zakresie, który przeszedł dany test lub zsumować te wartości w zakresie, dla którego odpowiadające wartości w innym (lub tym samym) zakresie spełniają określone kryteria. Działa podobnie do funkcji DSUM w programie Microsoft Excel.

Przykład

W tym przykładzie liczba wartości w zakresie A1:A10 mieści się w zakresie od 1 do 10 włącznie.

Można użyć następującej zagnieżdżonej instrukcji „IF”:

=SUM(IF(A1:A10>=1,IF(A1:A10<=10,1,0)))

Poniższa metoda działa również i jest łatwiejsza do odczytania, jeśli przeprowadzasz wiele testów:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),1,0))

Poniższa metoda zlicza liczbę dat, które znajdują się pomiędzy dwiema podanymi datami:

=SUM(IF((A1:A10>=DATEVALUE("1/10/99"))*(A1:A10<=DATEVALUE("2/10/99")),1,0))

Uwaga / Notatka

  • Te formuły należy wprowadzić jako formuły tablicowe, naciskając jednocześnie CTRL+SHIFT+ENTER. Na komputerze Macintosh naciśnij zamiast tego COMMAND+RETURN.
  • Tablice nie mogą odwoływać się do całych kolumn.

W przypadku tej metody pomnożysz wyniki jednego testu logicznego przez wyniki innego testu logicznego, aby zwrócić PRAWDA i FAŁSZ do funkcji SUMA. Można je porównać do następujących:

TRUE*TRUE=1
TRUE*FALSE=0
FALSE*TRUE=0
FALSE*FALSE=0

Metoda pokazana powyżej zlicza liczbę komórek w zakresie A1:A10, dla których oba testy są oceniane jako TRUE. Aby sumować wartości w odpowiednich komórkach (na przykład B1:B10), zmodyfikuj formułę, jak pokazano poniżej:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),B1:B10,0))

Możesz zaimplementować or w instrukcji SUM+IF podobnie. W tym celu zmodyfikuj formułę pokazaną powyżej, zastępując znak mnożenia (*) znakiem plus (+). Zapewnia on następującą formułę ogólną:

=SUM(IF((Test1)+(Test2)+...+(Testn),1,0))

Źródła

Aby uzyskać więcej informacji o sposobie obliczania wartości na podstawie warunku, wybierz pozycję Pomoc programu Microsoft Excel w menu Pomoc, wpisz informacje o obliczaniu wartości na podstawie warunku w Asystencie pakietu Office lub Kreatorze odpowiedzi, a następnie wybierz pozycję Wyszukaj.