Taula de continguts
En aquest article, aprendràs a crear una instrucció IF d'Excel per a diferents tipus de valors, així com a crear diverses sentències IF.
IF és una de les més funcions populars i útils a Excel. En general, utilitzeu una instrucció IF per provar una condició i per retornar un valor si es compleix la condició i un altre valor si no es compleix.
En aquest tutorial, aprendrem la sintaxi i usos habituals de la funció SI d'Excel i, a continuació, mireu més de prop els exemples de fórmules que s'espera que siguin útils tant per als usuaris principiants com per als usuaris experimentats.
Funció SI a Excel
SI és una de les funcions lògiques que avalua una determinada condició i retorna un valor si la condició és TRUE, i un altre valor si la condició és FALSA.
La sintaxi de la funció SI és la següent:
IF(prova_lògica, [valor_si_vertader], [valor_si_fals])Com veieu, SI pren un total de 3 arguments, però només el primer és obligatori, els altres dos són opcionals.
Logical_test (obligatori): la condició per provar. Es pot avaluar com a TRUE o FALSE.
Value_if_true (opcional): el valor a retornar quan la prova lògica s'avalua com a TRUE, és a dir, es compleix la condició. Si s'omet, s'ha de definir l'argument value_if_false .
Value_if_false (opcional): el valor que cal tornar quan la prova lògica s'avalua com a"Aprovat" si qualsevol de les puntuacions és superior a 80, la fórmula és:
=IF(OR(B2>80, C2>80), "Pass", "Fail")
Per a tots els detalls, visiteu:
- IF AND formula a Excel
- Funció Excel SI OR amb exemples de fórmules
Si error a Excel
A partir d'Excel 2007, tenim una funció especial, anomenada SIERROR, per comprovar si hi ha errors en fórmules. . A Excel 2013 i versions posteriors, també hi ha la funció IFNA per gestionar els errors #N/A.
I tot i així, pot haver-hi algunes circumstàncies quan s'utilitza la funció IF juntament amb ISERROR o ISNA és una solució millor. Bàsicament, IF ISERROR és la fórmula que s'ha d'utilitzar quan voleu retornar alguna cosa si hi ha error i una altra cosa si no hi ha error. La funció IFERROR no pot fer-ho, ja que sempre retorna el resultat de la fórmula principal si no és un error.
Per exemple, per comparar cada puntuació de la columna B amb les 3 millors puntuacions a E2: E4, i torneu "Sí" si es troba una coincidència, "No" en cas contrari, introduïu aquesta fórmula a C2 i després la copieu a C7:
=IF(ISERROR(MATCH(B2, $E$2:$E$4, 0)), "No", "Yes" )
Per a més informació, si us plau, consulteu la fórmula IF ISERROR a Excel.
Tant de bo, els nostres exemples us hagin ajudat a entendre els conceptes bàsics d'Excel IF. Us agraeixo la lectura i espero veure-us al nostre bloc la setmana vinent!
Quader de pràctiques
Excel IF: exemples de fórmules (fitxer .xlsx)
FALSE, és a dir, la condició no es compleix. Si s'omet, s'ha d'establir l'argument value_if_true.Fórmula SI bàsica a Excel
Per crear una instrucció simple Si aleshores a Excel, aquesta és el que heu de fer:
- Per a prova_lògica , escriviu una expressió que retorni VERTADER o FALS. Per a això, normalment hauríeu d'utilitzar un dels operadors lògics.
- Per a value_if_true , especifiqueu què voleu tornar quan la prova lògica avaluï com a TRUE.
- Per a value_if_false , especifiqueu què voleu tornar quan la prova lògica avaluï com a FALSE. Tot i que aquest argument és opcional, recomanem que el configureu sempre per evitar resultats inesperats. Per a l'explicació detallada, consulteu Excel IF: coses a saber.
Com a exemple, escrivim una fórmula IF molt senzilla que comprovi un valor a la cel·la A2 i retorni "Bo" si el valor és superior a 80, "Dolent" en cas contrari:
=IF(B2>80, "Good", "Bad")
Aquesta fórmula va a C2 i després es copia a través de C7:
En cas que vulgueu retornar un valor només quan la condició es compleix (o no es compleix), en cas contrari, res i, a continuació, utilitzeu una cadena buida ("") per a l'argument "indefinit". Per exemple:
=IF(B2>80, "Good", "")
Aquesta fórmula retornarà "Bo" si el valor d'A2 és superior a 80, una cel·la en blanc en cas contrari:
Excel Si aleshores fórmula: coses per saber
Tot i que els dos darrers paràmetres de la funció IF són opcionals, la vostra fórmula pot produir un resultat inesperatresultats si no coneixeu la lògica subjacent.
Si s'omet value_if_true
Si s'omet el segon argument de la vostra fórmula d'Excel SI (és a dir, hi ha dues comes consecutives després de la prova lògica) , obtindreu zero (0) quan es compleixi la condició, cosa que no té sentit en la majoria dels casos. Aquí teniu un exemple d'aquesta fórmula:
=IF(B2>80, , "Bad")
Per tornar una cel·la en blanc, proporcioneu una cadena buida ("") per al segon paràmetre, com aquesta:
=IF(B2>80, "", "Bad")
La captura de pantalla següent mostra la diferència:
Si s'omet value_if_false
Ometre el tercer paràmetre de IF produirà els resultats següents quan la prova lògica avaluï com a FALSE.
Si només hi ha un claudàtor de tancament després de value_if_true , la funció SI retornarà el valor lògic FALSE. Bastant inesperat, no? Aquí teniu un exemple d'aquesta fórmula:
=IF(B2>80, "Good")
Escriure una coma després de l'argument value_if_true forçarà Excel a retornar 0, cosa que tampoc té gaire sentit. :
=IF(B2>80, "Good",)
L'enfocament més raonable és utilitzar una cadena de longitud zero ("") per obtenir una cel·la en blanc quan no es compleix la condició:
=IF(B2>80, "Good", "")
Consell. Per retornar un valor lògic quan la condició especificada es compleix o no, proporcioneu TRUE per a value_if_true i FALSE per a value_if_false . Perquè els resultats siguin valors booleans que altres funcions d'Excel poden reconèixer, no inclogueu VERTADER i FALS en doblecometes ja que això els convertirà en valors de text normals.
Ús de la funció SI a Excel: exemples de fórmules
Ara que ja estàs familiaritzat amb la sintaxi de la funció SI, mirem alguns exemples de fórmules i aprenem a utilitzar les declaracions If then en real -escenaris de vida.
Funció IF d'Excel amb números
Per crear una instrucció IF per a números, utilitzeu operadors lògics com ara:
- Igual a (=)
- No és igual a ()
- Més gran que (>)
- Més gran o igual a (>=)
- Inferior que (<)
- Inferior o igual a (<=)
A dalt, ja heu vist un exemple d'aquesta fórmula que verifica si un nombre és més gran que un nombre determinat.
I aquí hi ha una fórmula que verifica si una cel·la conté un número negatiu :
=IF(B2<0, "Invalid", "")
Per als nombres negatius (que són inferiors a 0), el fórmula retorna "No vàlid"; per a zeros i nombres positius: una cel·la en blanc.
Funció d'Excel IF amb text
En general, s'escriu una instrucció IF per a valors de text utilitzant l'operador "igual a" o "no igual a".
Per exemple, la fórmula següent verifica l' Estat de lliurament a B2 per determinar si cal una acció o no:
=IF(B2="delivered", "No", "Yes")
Traduït a l'anglès senzill, la fórmula diu: retorna "No " si B2 és igual a "entregat", "Sí" en cas contrari.
Una altra manera d'aconseguir el mateix resultat és utilitzar l'operador "no igual a" i canviar elValors value_if_true i value_if_false :
=IF(C2"delivered", "Yes", "No")
Notes:
- Quan utilitzeu valors de text per als paràmetres d'IF, recordeu per tancar-los sempre entre cometes dobles .
- Com la majoria de les altres funcions d'Excel, SI no distingeix entre majúscules i minúscules de manera predeterminada . A l'exemple anterior, no distingeix entre "entregat", "entregat" i "ENTREGAT".
La sentència IF distingeix entre majúscules i minúscules per als valors de text
Per tractar majúscules i lletres minúscules com a caràcters diferents, utilitzeu IF en combinació amb la funció EXACT que distingeix entre majúscules i minúscules.
Per exemple, per tornar "No" només quan B2 conté "ENTREGAT" (la majúscula), utilitzareu aquesta fórmula. :
=IF(EXACT(B2,"DELIVERED"), "No", "Yes")
Si la cel·la conté text parcial
En una situació en què voleu basar la condició en concordança parcial en lloc de concordança exacta, La solució que em ve al cap és utilitzar comodins a la prova lògica. Tanmateix, aquest enfocament senzill i evident no funcionarà. Moltes funcions accepten comodins, però lamentablement IF no n'és una.
Una solució de treball és utilitzar IF en combinació amb ISNUMBER i SEARCH (no distingeix entre majúscules i minúscules) o FIND (distingeix entre majúscules i minúscules).
Per exemple, en cas que es requereixi l'acció "No" tant per als articles "Enviat" com per a "Enviament", la fórmula següent funcionarà bé:
=IF(ISNUMBER(SEARCH("deliv", B2)), "No", "Yes")
Per a més informació , consulteu:
- Declaració d'Excel IF per a la coincidència parcial del text
- Si la cel·laconté aleshores
Excel IF amb dates
A primera vista, pot semblar que les fórmules IF per a dates són semblants a sentències IF per a valors numèrics i de text. Malauradament, no és així. A diferència de moltes altres funcions, IF reconeix les dates en proves lògiques i les interpreta com a simples cadenes de text. En altres paraules, no podeu proporcionar una data en forma d'"1/1/2020" o ">1/1/2020". Perquè la funció SI reconegui una data, l'heu d'embolicar a la funció DATEVALUE.
Per exemple, a continuació us indiquem com podeu comprovar si una data determinada és superior a una altra data:
=IF(B2>DATEVALUE("7/18/2022"), "Coming soon", "Completed")
Aquesta fórmula avalua les dates de la columna B i torna "Properament" si un joc està programat per al 18 de juliol de 2022 o posterior, "Completat" per a una data anterior.
Per descomptat, no hi ha res que impedeixi introduir la data objectiu en una cel·la predefinida (per exemple, E2) i fer referència a aquesta cel·la. Només recordeu bloquejar l'adreça de la cel·la amb el signe $ per convertir-la en una referència absoluta. Per exemple:
=IF(B2>$E$2, "Coming soon", "Completed")
Per comparar una data amb la data actual , utilitzeu la funció TODAY(). Per exemple:
=IF(B2>TODAY(), "Coming soon", "Completed")
Declaració d'Excel IF per a espais en blanc i no en blanc
Si voleu marcar les vostres dades d'alguna manera en funció de les cel·les que estan buides o no buit, podeu:
- Utilitzar la funció SI juntament amb ISBLANK, o
- Utilitzar les expressions lògiques (igual a en blanc) o "" (no igual aen blanc).
La taula següent explica la diferència entre aquests dos enfocaments amb exemples de fórmules.
Prova lògica | Descripció | Exemple de fórmula | |
Cel·les en blanc | ="" | S'avalua com a TRUE si una cel·la està visualment buida, fins i tot si conté una cadena de longitud zero . En cas contrari, s'avalua com a FALSE. | =SI(A1 ="", 0, 1) |
Retorna 0 si A1 està visualment en blanc. En cas contrari, retorna 1.
Si A1 conté una cadena buida (""), la fórmula retorna 0.
Avalua com a TRUE és una cel·la conté absolutament res : sense fórmula, sense espais, sense cadenes buides.
En cas contrari, s'avalua com a FALSE.
Retorna 0 si A1 està absolutament buit, 1 en cas contrari.
Si A1 conté una cadena buida (""), el La fórmula retorna 1.
Les cel·les amb cadenes de longitud zero es consideren en blanc .
Retorna 1 si A1 no està en blanc; 0 en cas contrari.
Si A1 conté una cadena buida, la fórmula retorna 0.
Les cel·les amb cadenes de longitud zero es consideren no-en blanc .
Funciona igual que la fórmula anterior, però retorna 1 si A1 conté una cadena buida.
I ara, veiem sentències IF en blanc i no en blanc en acció. Suposem que tens una data a la columna B només si ja s'ha jugat una partida. Per etiquetar els jocs completats, utilitzeu una d'aquestes fórmules:
=IF(B2="", "", "Completed")
=IF(ISBLANK(B2), "", "Completed")
=IF($B2"", "Completed", "")
=IF(ISBLANK($B2)=FALSE, "Completed", "")
En cas que el provat les cel·les no tenen cadenes de longitud zero, totes les fórmules retornaran exactament els mateixos resultats:
Comproveu si dues cel·les són iguals
Per crear una fórmula que comprove si dues cel·les coincideixen, compareu el cel·les utilitzant el signe igual (=) a la prova lògica de SI. Per exemple:
=IF(B2=C2, "Same score", "")
Per comprovar si les dues cel·les contenen el mateix text, incloses les majúscules i minúscules, feu que la vostra fórmula IF distingeixi entre majúscules i minúscules amb l'ajuda de la funció EXACTE.
Per exemple, per comparar les contrasenyes en A2 i B2, i retorna "Coincidència" si les dues cadenes són exactament iguals, "No coincideixen" en cas contrari, la fórmula és:
=IF(EXACT(A2, B2), "Match", "Don't match")
SI llavors fórmula per executar una altra fórmula
En tots els exemples anteriors, una instrucció SI d'Excel retornava valors. Però també pot realitzar un determinat càlcul o executar una altra fórmula quan es compleix o no una condició específica. Per a això, incrusta una altra funció o expressió aritmètica als arguments valor_si_cert i/o valor_si_fals .
Per exemple, si B2és superior a 80, el multiplicarem per un 7%, en cas contrari per un 3%:
=IF(B2>80, B2*7%, B2*3%)
Múltiples declaracions IF a Excel
En essència, hi ha dues maneres d'escriure múltiples declaracions IF a Excel:
- Anidificació de diverses funcions IF una en una altra
- Utilitzant la funció AND o OR a la prova lògica
Declaració IF imbricada
Les funcions IF imbricades us permeten col·locar diverses declaracions IF a la mateixa cel·la, és a dir, provar diverses condicions dins d'una fórmula i retornar valors diferents en funció dels resultats d'aquestes proves.
Suposeu que el vostre L'objectiu és assignar diferents bonificacions en funció de la puntuació:
- Més de 90 - 10%
- 90 a 81 - 7%
- 80 a 70 - 5%
- Menys de 70 - 3%
Per dur a terme la tasca, escriviu 3 funcions SI separades i les aniu unes a les altres com aquesta:
=IF(B2>90, 10%, IF(B2>=81, 7%, IF(B2>=70, 5%, 3%)))
Per obtenir més exemples de fórmules, consulteu:
- Fórmula IF imbricada d'Excel
- Funció IF imbricada: exemples, bones pràctiques i alternatives
Excel Declaració IF amb mu Condicions múltiples
Per avaluar diverses condicions amb la lògica AND o OR, incrusta la funció corresponent a la prova lògica:
- AND - retornarà TRUE si tots es compleixen les condicions.
- O: tornarà TRUE si es compleix alguna de les condicions.
Per exemple, per tornar "Aprovat" si les dues puntuacions a B2 i C2 són superiors a 80, la fórmula és:
=IF(AND(B2>80, C2>80), "Pass", "Fail")
Per obtenir