Usiłuję zmienić wartość komórki w Arkuszach Google na podstawie wartości sąsiedniej komórki. Ta sąsiednia komórka otrzymuje swoją wartość z koloru sąsiedniej komórki za pomocą formuły z tej odpowiedzi Quora. Tak więc wartość komórki powinna się zmienić w oparciu o kod szesnastkowy uzyskany z koloru pierwszej komórki. Istnieją obecnie cztery możliwe wartości szesnastkowe, więc próbowałem umieścić cztery różne instrukcje IF w tej samej komórce, więc na tej podstawie zmienia się jej wartość.
Moja pierwsza próba doprowadziła do błędu analizy formuły:
=if((J2="#00ff00","Read"), if(j2="#ff0000", "Unread"), if(j2="#ff9900","In Progress"), if(j2="#000000", "Not Applicable"))
Oczywiste jest, że nie można po prostu oddzielić, jeśli instrukcje są przecinkami. Na podstawie tego pytania dotyczącego przepełnienia stosu wypróbowałem ten kod z zagnieżdżonymi instrukcjami IF:
=if((J2="#00ff00","Read", if(j2="#ff0000", "Unread", if(j2="#ff9900","In Progress",if(j2="#000000", "Not Applicable")))))
Prowadzi to również do błędu analizy formuły.
Czy jest jakiś sposób, aby po prostu dołączyć wiele instrukcji IF w tej samej komórce, która będzie działać dla mojego kodu?
źródło
Odpowiedzi:
Użyj
lookup
zamiastif
:Uwaga: drugim parametrem musi być posortowana lista.
źródło
ifs
?Krótka odpowiedź
Problemem w podanych przykładach są nawiasy. Zastosuj je poprawnie.
Wyjaśnienie
IF()
funkcja powinna mieć dwa parametry i opcjonalnie trzeci.Konkretny problem z
IF()
ma zbyt wiele parametrów.logical_expression
zewnętrzneIF()
nie zwracająTRUE
lubFALSE
W Arkuszach Google parametry funkcji są oddzielone przecinkami (lub średnikami, jeśli arkusz kalkulacyjny używa przecinka jako separatora dziesiętnego). Gdy w nawiasie są używane różne operacje i funkcje wewnątrz funkcji, są one uważane za parametr funkcji, która je zawiera.
Powszechną praktyką jest umieszczanie wewnętrznego
IF()
jakovalue_if_false
, ale można to zrobić na wiele sposobów. DodanieIF()
wewnątrz innego, jakvalue_if_true
ivalue_if_false
jest nazywaneIF() logical test nesting
lub po prostuIF() nesting
.Poniżej znajduje się przykład formuły, która ma trzy
IF()
, dwa z nich użyte do określeniavalue_if_false
rodzicaIF()
. Dla czytelności zastosowano wieloliniowe i pionowe wyrównanie stylu nawiasówPowyższy styl można wykorzystać do pisania formuł w Arkuszach Google. Uznałem, że jest to przydatne do debugowania formuł.
Odniesienie
źródło
Właśnie dowiedziałem się, jak połączyć, jeśli i lub.
Przykład:
Na przykład:
Źródło: Połączone użycie IF, AND, OR Funkcje logiczne w arkuszu kalkulacyjnym Google Doc .
źródło
Można na przykład zagnieżdżać instrukcje IF
Pracowałbym
LUB
możesz na przykład użyć zagnieżdżonego IFAND
Działa również.
źródło
Zaproponowano ci teorię i lepsze podejście, ale musisz odpowiedzieć konkretnie:
proszę spróbować:
To znaczy, twoja druga próba bez pierwszego nawiasu otwierającego i bez ostatniego nawiasu zamykającego.
źródło