Hoppa till huvudinnehåll

Power Query: If-sats - kapslade ifs & flera villkor

I Excel Power Query, IF-satsen är en av de mest populära funktionerna för att kontrollera ett villkor och returnera ett specifikt värde beroende på om resultatet är TRUE eller FALSE. Det finns vissa skillnader mellan denna if-sats och IF-funktionen i Excel. I den här handledningen kommer jag att introducera syntaxen för denna if-sats och några enkla och komplexa exempel för dig.

Grundläggande if-satssyntax för Power Query

Power Query if-sats med en villkorlig kolumn

Power Query if-sats genom att skriva M-koden


Grundläggande if-satssyntax för Power Query

In Power Query, syntaxen är:

= om logical_test then value_if_true annars value_if_false
  • Logiktest: Tillståndet du vill testa.
  • värde_om_sant: Värdet som ska returneras om resultatet är TRUE.
  • värde_om_falskt: Värdet som ska returneras om resultatet är FALSE.
Anmärkningar: Power Query om satsen är skiftlägeskänslig måste if, then och else vara gemener.

I Excel Power Query, det finns två sätt att skapa den här typen av villkorlig logik:

  • Använda funktionen Conditional Column för vissa grundläggande scenarier;
  • Skriver M-kod för mer avancerade scenarier.

I det följande avsnittet kommer jag att prata om några exempel för att använda denna if-sats.


Power Query if-sats med en villkorlig kolumn

 Exempel 1: Grundläggande if-sats

Här kommer jag att presentera hur man använder detta if-uttalande i Power Query. Till exempel har jag en följande produktrapport, om produktstatusen är gammal, som visar 50 % rabatt; om produktstatusen är ny, visar 20 % rabatt enligt nedanstående skärmdumpar.

1. Välj datatabellen från kalkylbladet och klicka sedan i Excel 2019 och Excel 365 Data > Från tabell/sortiment, se skärmdump:

Anmärkningar: Klicka på i Excel 2016 och Excel 2021 Data > Från tabell, se skärmdump:

2. Sedan, i det öppnade Power Query redaktör fönstret klickar Lägg till kolumn > Villkorlig kolumn, se skärmdump:

3. I poppade ut Lägg till villkorlig kolumn dialogrutan, gör följande:

  • Nytt kolumnnamn: Ange ett namn för den nya kolumnen;
  • Ange sedan de kriterier du behöver. Till exempel kommer jag att specificera Om status är lika med gammal så 50% annars 20%;
Tips:
  • Kolumnnamn: Kolumnen för att utvärdera ditt om-villkor mot. Här väljer jag Status.
  • Operatör: Villkorlig logik att använda. Alternativen kommer att variera beroende på datatypen för det valda kolumnnamnet.
    • text: börjar med, börjar inte med, är lika med, innehåller osv.
    • Nummer: är lika med, är inte lika, är större än eller lika med osv.
    • Datum: är före, är efter, är lika med, är inte lika osv.
  • Värde: Det specifika värdet att jämföra din utvärdering mot. Det tillsammans med kolumnen namn och operatör utgör ett villkor.
  • Produktion: Värdet som ska returneras om villkoret är uppfyllt.
  • annars: Ett annat värde att returnera när villkoret är falskt.

4. Klicka sedan OK knappen för att gå tillbaka till Power Query redaktör fönster. Nu en ny Rabatt kolumn läggs till, se skärmdump:

5. Om du vill formatera siffrorna till procent, klicka bara ABC123 ikon från Rabatt kolumnrubrik och välj Procent som du behöver, se skärmdump:

6. Klicka slutligen Hem > Stäng och ladda > Stäng och ladda för att ladda dessa data till ett nytt kalkylblad.


 Exempel 2: Komplex if-sats

Med det här alternativet för villkorlig kolumn kan du också infoga två eller flera villkor i Lägg till villkorlig kolumn dialog. Gör så här:

1. Välj datatabellen och gå till Power Query redaktör genom att klicka Data > Från tabell/sortiment. Klicka på i det nya fönstret Lägg till kolumn > Villkorlig kolumn.

2. I poppade ut Lägg till villkorlig kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Ange det första kriteriet i det första kriteriefältet och klicka sedan Lägg till klausul för att lägga till andra kriteriefält efter behov.

3. När du är klar med kriterierna klickar du OK knappen för att gå tillbaka till Power Query redaktör fönster. Nu kommer du att få en ny kolumn med motsvarande resultat du behöver. Se skärmdump:

4. Till sist, klicka Hem > Stäng och ladda > Stäng och ladda för att ladda dessa data till ett nytt kalkylblad.


Power Query if-sats genom att skriva M-koden

Normalt är Conditional Column användbar för vissa grundläggande scenarier. Ibland kan du behöva använda flera villkor med OCH- eller ELLER-logik. I det här fallet måste du skriva M-kod i en anpassad kolumn för mer komplexa scenarier.

 Exempel 1: Grundläggande if-sats

Ta den första informationen som exempel, om produktens status är Gammal, visar 50 % rabatt; om produktens status är Ny, visar 20 % rabatt. För att skriva M-koden, gör så här:

1. Välj tabellen och klicka Data > Från tabell/sortiment för att gå till Power Query redaktör fönster.

2. Klicka på i det öppnade fönstret Lägg till kolumn > Anpassad kolumn, se skärmdump:

3. I poppade ut Anpassad kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Mata sedan in denna formel: if [Status] = "Gammal" sedan "50% " annars "20% " i Anpassad kolumn formeln låda.

4. Klicka sedan OK för att stänga den här dialogrutan. Nu kommer du att få följande resultat efter behov:

5. Äntligen klickar du på Hem > Stäng och ladda > Stäng och ladda för att ladda dessa data till ett nytt kalkylblad.


 Exempel 2: Komplex if-sats

Kapslade if-satser

Vanligtvis, för att testa undervillkoren, kan du kapsla flera if-satser. Till exempel har jag datatabellen nedan. Om produkten är "Klänning", ge 50 % rabatt på det ursprungliga priset; om produkten är "Tröja" eller "Hoodie", ge 20 % rabatt på det ursprungliga priset; och andra produkter håller originalpriset.

1. Välj datatabellen och klicka Data > Från tabell/sortiment för att gå till Power Query redaktör fönster.

2. Klicka på i det öppnade fönstret Lägg till kolumn > Anpassad kolumn. I det öppnade Anpassad kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Mata sedan in formeln nedan i Anpassad kolumn formeln låda.
  • = om [Produkt] = "Klänning" så [Pris] * 0.5 annat
    om [Produkt] = "Tröja" så [Pris] * 0.8 annat
    om [Produkt] = "Hoodie" då [Pris] * 0.8
    annat [Pris]

3. Och klicka sedan på OK knappen för att gå tillbaka till Power Query redaktör fönster, och du kommer att få en ny kolumn med de data du behöver, se skärmdump:

4. Äntligen klickar du på Hem > Stäng och ladda > Stäng och ladda för att ladda dessa data till ett nytt kalkylblad.


If-sats med OR-logik

ELLER-logiken utför flera logiska tester, och det sanna resultatet kommer att återkomma om något av de logiska testerna är korrekta. Syntaxen är:

= om logiskt_test1 eller logiskt_test2 eller … då värde_om_sant annat värde_om_falskt

Om jag antar att jag har tabellen nedan, vill jag nu ha en ny kolumnvisning som: om produkten är "Dress" eller "T-shirt", så är märket "AAA", märket för andra produkter är "BBB".

1. Välj datatabellen och klicka Data > Från tabell/sortiment för att gå till Power Query redaktör fönster.

2. Klicka på i det öppnade fönstret Lägg till kolumn > Anpassad kolumn, i det öppnade Anpassad kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Mata sedan in formeln nedan i Anpassad kolumnformel låda.
  • = om [Produkt] = "Klänning" eller [Produkt] = "T-shirt" sedan "AAA"
    annars "BBB"

3. Och klicka sedan på OK knappen för att gå tillbaka till Power Query redaktör fönster, och du kommer att få en ny kolumn med de data du behöver, se skärmdump:

4. Slutligen klickar du på Hem > Stäng och ladda > Stäng och ladda för att ladda dessa data till ett nytt kalkylblad.


If-sats med AND Logic

AND-logiken utför flera logiska tester i en enda if-sats. Alla tester måste vara sanna för att det verkliga resultatet ska returneras. Om något av testen är falskt returneras det falska resultatet. Syntaxen är:

= om logiskt_test1 och logiskt_test2 och … då värde_om_sant annat värde_om_falskt

Ta till exempel ovanstående data, jag vill att en ny kolumn visas som: om produkten är "Dress" och beställer mer än 300, ge sedan 50 % rabatt på det ursprungliga priset; annars behåll originalpriset.

1. Välj datatabellen och klicka Data > Från tabell/sortiment för att gå till Power Query redaktör fönster.

2. Klicka på i det öppnade fönstret Lägg till kolumn > Anpassad kolumn. I det öppnade Anpassad kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Mata sedan in formeln nedan i Anpassad kolumnformel låda.
  • = om [Produkt] ="Klänning" och [Beställning] > 300 så [Pris]*0.5
    annat [Pris]

3. Klicka sedan OK knappen för att gå tillbaka till Power Query redaktör fönster, och du kommer att få en ny kolumn med de data du behöver, se skärmdump:

4. Slutligen bör du ladda dessa data till ett nytt kalkylblad genom att klicka Hem > Stäng och ladda > Stäng och ladda.


If-sats med OR och AND-logik

Okej, de tidigare exemplen är lätta för oss att förstå. Nu ska vi göra det svårare. Du kan kombinera OCH och ELLER för att bilda vilket tillstånd du kan föreställa dig. I den här typen kan du använda parenteser i formeln för att definiera komplexa regler.

Ta även ovanstående data som ett exempel, anta att jag vill att en ny kolumn visas som: om produkten är "Dress" och dess beställning är större än 300, eller produkten är "Byxor" och dess ordning större än 300, visa sedan "A+", annars visas "Övrigt".

1. Välj datatabellen och klicka Data > Från tabell/sortiment för att gå till Power Query redaktör fönster.

2. Klicka på i det öppnade fönstret Lägg till kolumn > Anpassad kolumn. I det öppnade Anpassad kolumn dialogrutan, gör följande:

  • Ange ett namn för den nya kolumnen i Nytt kolumnnamn textruta;
  • Mata sedan in formeln nedan i Anpassad kolumnformel låda.
  • =om ([Produkt] = "Klänning" och [Beställ] > 300 ) eller
    ([Produkt] = "Byxor" och [Beställning] > 300 )
    sedan "A+"
    annars "Övrigt"

3. Klicka sedan OK knappen för att gå tillbaka till Power Query redaktör fönster, och du kommer att få en ny kolumn med de data du behöver, se skärmdump:

4. Slutligen bör du ladda dessa data till ett nytt kalkylblad genom att klicka Hem > Stäng och ladda > Stäng och ladda.

Tips:
I rutan Anpassad kolumnformel kan du använda följande logiska operatorer:
  • = : Lika med
  • <> : Inte lika med
  • > : Större än
  • >= : Större än eller lika med
  • < : Mindre än
  • <= : Mindre än eller lika med

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations