
Formuła ogólna
=IF(A1"",A1,IF(B1"",B1,IF(C1"",C1,IF(D1"",D1,"no value"))))
Podsumowanie
Aby przetestować wiele komórek i zwrócić wartość z pierwszej niepustej komórki, możesz użyć formuły opartej na funkcji JEŻELI. W przedstawionym przykładzie kolumna D zawiera daty ukończenia zadań. Formuła w komórce F5 to:
=IF(B5"",B5,IF(C5"",C5,IF(D5"",D5,IF(E5"",E5,"no value"))))
która zwraca wartość z pierwszej niepustej komórki, odpowiednio B5, C5, D5 lub E5. Gdy wszystkie komórki są puste, formuła zwraca „brak wartości”. Wartość zwracaną, gdy wszystkie komórki są puste, można dostosować według potrzeb.
Wyjaśnienie
W programie Excel puste podwójne cudzysłowy („”) oznaczają pusty ciąg. Symbol jest operatorem logicznym, który oznacza „różne od”, więc poniższe wyrażenie oznacza, że „A1 nie jest puste”:
=A1"" // A1 is not empty
To wyrażenie jest używane czterokrotnie w formule przedstawionej w przykładzie w celu przetestowania czterech różnych komórek w określonej kolejności.
Ogólna struktura tego wzoru jest nazywana „zagnieżdżoną formułą JEŻELI”. Każda instrukcja IF sprawdza komórkę, aby zobaczyć, czy nie jest pusta. Jeśli nie jest pusta, funkcja JEŻELI zwraca wartość z tej komórki. Jeśli komórka jest pusta, instrukcja IF przekazuje przetwarzanie innej instrukcji IF:
=IF(B5"",B5,IF(C5"",C5,IF(D5"",D5,IF(E5"",E5,"no value"))))
Przepływ zagnieżdżonego IF jest łatwiejszy do wizualizacji, jeśli dodasz podziały wierszy do formuły. Poniżej do formuły dodano podziały wierszy, aby wyrównać instrukcje IF:
= IF(B5"",B5, IF(C5"",C5, IF(D5"",D5, IF(E5"",E5, "no value"))))
Z ISBLANK
Excel zawiera funkcję ISBLANK, która zwraca wartość TRUE, gdy komórka jest pusta:
=ISBLANK(A1) // A1 is blank
Zachowanie można „odwrócić”, zagnieżdżając funkcję ISBLANK wewnątrz funkcji NOT:
=ISBLANK(A1) // A1 is not blank
Powyższy wzór można ponownie napisać, aby używał ISBLANK w następujący sposób:
=IF(NOT(ISBLANK(B5)),B5,IF(NOT(ISBLANK(C5)),C5,IF(NOT(ISBLANK(D5)),D5,IF(NOT(ISBLANK(E5)),E5,"novalue"))))