Funció SI a Excel: exemples de fórmules per a text, números, dates, espais en blanc

  • Comparteix Això
Michael Brown

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. ISBLANK()

    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.

    =IF(ISBLANK(A1) ), 0, 1)

    Retorna 0 si A1 està absolutament buit, 1 en cas contrari.

    Si A1 conté una cadena buida (""), el La fórmula retorna 1. Cel·les no en blanc "" Avalua com a TRUE si una cel·la conté algunes dades. En cas contrari, s'avalua com a FALSE.

    Les cel·les amb cadenes de longitud zero es consideren en blanc . =IF(A1 "", 1, 0)

    Retorna 1 si A1 no està en blanc; 0 en cas contrari.

    Si A1 conté una cadena buida, la fórmula retorna 0. ISBLANK()=FALSE Avalua com a TRUE si una cel·la no està buida. En cas contrari, s'avalua com a FALSE.

    Les cel·les amb cadenes de longitud zero es consideren no-en blanc . =IF(ISBLANK(A1)=FALSE, 0, 1)

    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

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.