Cel: Praca nad arkuszem kalkulacyjnym budżetu i próba użycia dwóch formuł w jednej komórce w celu ustalenia salda z wydatków wydatkowanych lub uzyskanych.
Zastosowane formuły:
=IF(OR(F17="", H16-F17),E17="",0,H16+E17))
=IF(E17="",0,H16+E17, IF(F17="",0,H16-F17))
=IF(E17="",0,H16+E17),IF(F17="",0,H16-F17)
Z każdym przykładem otrzymuję powiadomienie „zbyt wiele argumentów w funkcji”.
microsoft-excel
użytkownik762102
źródło
źródło
Odpowiedzi:
Patrząc tylko na pierwszą formułę, jest zbyt wiele argumentów:
Instrukcja IF () składa się tylko z trzech części: testu logicznego, wartości, jeśli true, i wartości, jeśli false.
Jeśli na przykład próbujesz sprawdzić, czy F17 lub E17 jest puste, a następnie wykonać dodawanie lub odejmowanie na podstawie tego testu, należy napisać w następujący sposób:
Tutaj funkcja OR () ma dwa argumenty i służy jako test logiczny. Jeśli F17 lub E17 jest puste, wynik to H16-F17. Jeśli żadne nie jest puste, wynikiem jest H16 + E17.
Może to pomóc, jeśli wyjaśnisz, co próbujesz zrobić słowami, tak jak zrobiłem powyżej dla instrukcji IF ().
EDYCJA: Ponownie czytając tytuł pytania, wygląda na to, że próbujesz skonstruować zagnieżdżoną instrukcję IF (). W takim przypadku albo wartość-jeśli-prawda, albo wartość-jeśli-fałsz (lub oba) może być inną instrukcją IF (). Oto przykład:
Tutaj, jeśli LogicalTest1 i 2 są PRAWDA, wynikiem jest ValueA. Jeśli LogicalTest1 ma wartość PRAWDA, a 2 ma wartość FAŁSZ, wynikiem jest Wartość B. Jeśli LogicalTest1 ma wartość FAŁSZ (niezależnie od LogicslTest2), wynikiem jest Wartość3.
Coś w tym stylu może dać ci to, czego szukasz.
źródło