KALKYLER
FRÅGOR & SVAR
101 -

Nr 135
F: Hur ska jag i en cell kunna utvärdera och addera ihop följande villkor:
  • A1=10 -----> 100
  • A1=20 -----> 200
  • A1=30 -----> 300
S: Enklast är det med följande formel:

=100*((A1=10)+(A1=20)*2+(A1=30)*3)

Nr 134
F: Jag vill räkna antal förekomster av värden. Dessa värden vill jag ange i cell vars innehåller förändras.
S: Enklast är att använda:

=ANTAL.OM(A1:A100;"="&B1)

eller en matrisformel:

{=ANTAL(SÖK(B1;A$1:A$100))}

Nr 133
F: Hur kan jag göra för att räkna antal förekomster av "Ja" i flera icke-sammanhängande cellområden?
S: Följande stegvisa beskrivnig ger en lösning:

1. Skapa ett nytt namn och referera till de aktuella cellområdena:

Namn:           Område
Refererar till: =Blad1!$A$1;Blad1!$A$7;Blad1!$C$4

2. Skapa formeln =ANTAL.OM(Område:Område;"Ja")

Nr 132
F: I en kolumn har jag värden vars längd varierar mellan 4 och 6 tecken. Nu vill jag att alla ska ha samma längd om 6 tecken så att t ex talet 4500 blir 004500.
S: Följande formel löser problemet ifråga:

=REP(0;6-LÄNGD(A1))&A1

Nr 131
F: I två kolumner (A och B) finns det värden. Nu vill jag räkna antal poster i B-kolumnen som är lika med eller större än sin motsvarande post i A-kolumnen. Jag vill kunna ange skilda procentsatser.
S: Enklast är att lösa det med hjälp av en matrisformel:

{=SUMMA(1*(B2:B4/A2:A4>=1+C1))}

Där cellen C1 håller procentsatsen.

Nr 130
F: Utifrån fråga 129 - Hur kan jag erhålla adressen för den cell i raden som håller det sista värdet?
S: Följande formel ger adressen:

{=ADRESS(2;MAX((OM(ÄRTOM(A2:D2);0;1))*KOLUMN(A2:D2)))}

Nr 129
F: Hur kan jag få fram i vilken kolumn (1-4) det sista värdet i raden är inmatad i?
S: Jo, följande matrisformel ger dig vägledning:

{=MAX((OM(ÄRTOM(A2:D2);0;1))*KOLUMN(A2:D2))}

Nr 128
F: Hur kan jag summera ett cellområde som även innehåller meddelandet #Saknas!
S: Det borde kunna ske med följande formel:

=SUMMA.OM(A1:A4;"<>#Saknas!")

Nr 127
F: I en kolumn har jag värden jag vill leta upp efter position (=rad). Jag vill kunna ange ett värde i en cell som representerar en position och få fram positionens värde.
S: Följande funktion kan ge dig vägledning:

=INDIREKT("C"&D1)

Där listan återfinns i C-kolumnen och radnumret i cellen D1.

Nr 126
F: Jag har några listor med slumpmässigt genererade värden. Från dessa listor vill jag få fram:
  • Det lägsta värdet som är större än angivet värde i en cell.
  • Det största värdet mindre än angivet värde i en cell.
S: Dessa formler kan vara dig behjälplig:
 
  • =MINSTA(A2:A200;1+ANTAL.OM(A2:A100;"<"&D2))
  • =STÖRSTA(A2:A200;1+ANTAL.OM(A2:A100;">"&D3))
Nr 125
F: I ett namngivet dynamiskt cellområde vill jag alltid summera sista kolumnens värden. Hur kan det ske utan att använda sig av VBA?
S: Följande formel ska lösa problemet ifråga:

=PRODUKTSUMMA(N(INDIREKT(ADRESS(RAD(Namn);KOLUMNER(Namn)))))

Nr 124
F: Är det möjligt att erhålla vilket tal som saknas i en sifferserie? Antag att jag har sifferserien 1 - 5 och talet 4 saknas. Det är endast ett tal som saknas i listan.
S: Antag att listan finns i cellområdet A1:A5 så kan följande matrisformel ge en lösning:

{=MAX((ANTAL.OM(A1:A5;RAD(1:6)-1)=0)*(RAD(1:6)-1))}
 
Nr 123
F: Jag har en arbetsbok där användarna får lägga till nya arbetsblad. I ett arbetsblad sker summering av vissa celler för alla arbetsbladen. Problemet är att jag inte kan få XL att automatiskt lägga in den nya arbetsbladens namn i formlerna.
S: Enklast är att göra följande:
  • Lägg till ett nytt arbetsblad först i arbetsboken och namnge det till Start.
  • Lägg till ett nytt arbetsblad sist i arbetsboken och namnge det till Slut.
  • Ange följande formel i sammanfattningsbladet:
    =SUMMA(Start:Slut!A1)
  • Dölj båda ovanstående arbetsblad.
Nr 122
F: Jag har en uppslagstabell. När jag anger ett värde i en cell vill jag att XL ska ge antingen det exakta värdet eller det närmaste värdet.
S: För att lösa det krävs två matrisformler, där båda ger det exakta värdet om det finns:

Följande formel ger det högre närmaste värdet:

{=MAX(OM(ABS(A1:B10-E2)=MIN(ABS(A1:B10-E2));A1:B10))}

Följande formel ger det lägre närmaste värdet:

{=MIN(OM(ABS(A1:B10-E2)=MIN(ABS(A1:B10-E2));A1:B10))}

Ett närliggande tips är: Hitta närmaste värdet

Nr 121
F: I en lista, med såväl tal som text, vill jag kunna räkna antal celler som innehåller text.
S: Följande formel löser det enklast:

=ANTAL.OM(A1:A5;"*")

Nr 120
F: I en kolumn skrivs både text och tal in. Hur ska jag göra för att summera talen och alltid få med de sist inmatade?
S: Antag att data matas in i kolumn A:

=SUMMA(FÖRSKJUTNING($A$1;;;ANTALV($A:$A)))

Noterbart är att formeln förutsätter att inga tomrader finns

Nr 119
F: Jag behöver räkna antal värden mellan 10 - 15 i en lista.
S: Närmast tillhands är följande formel:

=PRODUKTSUMMA(ANTAL.OM(A1:A10;RAD(10:15)))

Nr 118
F: Hur hittar jag den sista ifyllda raden?
S: Jo, mha följande matrisformel:

{=MAX(OM(ÄRTOM(A1:A100);"";RAD(A1:A100)))}

Nr 117
F: Hur gör jag för att summera var 4:e post i en kolumn?
S: Enklast är att använda sig av följande matrisformel:

{=SUMMA((REST(RAD(A1:A100)+2;4)=0)*(A1:A100))}

Nr 116
F: Jag vill både få fram antal tal samt summering av ett cellmråde där värdena faller inom ">= x" och "<=y", dvs inom ett  intervall.
S: Du hittar ett sätt att lösa det på i tipset Intervallsummering och vill vi inte användas oss av en matrisformel kan följande formler användas istället:

Antal:
=PRODUKTSUMMA((A1:A10>=B1)*(A1:A10<=B2))

Summa:
=PRODUKTSUMMA((A1:A10>=B1)*(A1:A10<=B2)*A1:A10)

Nr 115
F: Jag vill summera värden i en kolumn men endast om det finns text i den intilliggande kolumnen.
S: Pröva följande formel:

=PRODUKTSUMMA((B1:B7>0)*(B1:B7)*ÄRTEXT(A1:A7))

En annan möjlig lösning är:

=SUMMA((B1:B7>0)*(B1:B7)*ÄRTEXT(A1:A7))

Nr 114
F: Om cellen A1 saknar värde så ska värdet i cellen B2 vara tomt annars ska värdet 1 anges - Hur gör jag?
S: Enklast är följande OM-formel:

=OM(ÄRTOM(A1);"";1)

Nr 113
F: Hur gör jag för att få reda på antalet celler som innehåller text i ett område?
S: Jo, det finns några möjliga lösningar varav följande är enkel att använda:

=PRODUKTSUMMA(ÄRTEXT(A1:A6)*1)

Nr 112
F: Jag vill att XL alltid ska referera till samma cell, t ex B10, oavsett om rader o kolumner infogas / tas bort.
S: Det kan faktiskt ske mha av INDIREKT-funktionen:

=INDIREKT("B10")

Om vi alltid vill summera cellområdet B1:B10 oavsett vad som sker därefter så kan det lösas på följande sätt:

=SUMMA(INDIREKT("B1:B10"))

Nr 111
F: Jag vill inte använda mig av en matrisformel för att erhålla medelvärdet givet ett villkor:

{=MEDEL(OM(B1:B4>=10;A1:A4))}, vill jag ersätta men en "vanlig" formel!

S: Enklast är att använda sig av följande "vanliga" formel:

=PRODUKTSUMMA((B1:B4>=10)*(A1:A4))/PRODUKTSUMMA(N(B1:B4>=10))

Nr 110
F: Hur gör jag för att summera värdena i de rader som har jämna radnummer, dvs rad 2, 4 6, osv?
S: Enklast är att använda sig av följande matrisformel:

Jämna radnummer:
{=SUMMA(OM(REST(RAD(A1:A6);2)=0;A1:A6))}

Ojämna radnummer:
{=SUMMA(OM(REST(RAD(A1:A6);2)=1;A1:A6))}

Nr 109
F: Är det möjligt att begränsa antal decimaler till t ex 2 st i ett cellområde?
S: Ja, det går mha datavalidering och med följande valideringsformel:

=LÄNGD(D2)-HELTAL(D2)<=3

Nr 108
F: Jag vill skapa en dynamisk formel. Grundformeln är =SUMMA(A1:A5) och jag vill kunna utöka den med ett värde som anges i B1. Om B1=3 så ska formeln summera cellområdet A1:A8.
S: Följande formel skapar dynamiken:

=SUMMA(INDIREKT("A1:A"&5+B1))

Nr 107
F: Hur döljer jag meddelandet #Saknas!
S: Här kan vi använda oss av villkorsstyrd formatering och följande formel: =ÄRSAKNAD(A1)

samt ger texten samma färg som bakgrunden.

Nr 106
F: Behöver erhålla antal ifyllda celler i en kolumn, oavsett om det är text eller värden i cellerna.
S: Enklast är följande formel:

=PRODUKTSUMMA(N(A2:A37<>""))

Nr 105
F: I en kolumn intill en kolumnlista vill jag visa listvärden avrundade till antingen närmaste 5-tal (25, 35, 45...) eller till närmaste 10-tal (80, 90, 100...). Villkoret för avrundning är om tal >=50 eller ej.
S: Det finns några möjliga lösningar för detta men den bästa är:

=MAVRUNDA(A2;OM(A2>=50;10;5))

Nr 104
F: Jag vill summera värden och samtidigt avrunda dessa till heltal?
S: Hm, denna formel borde ge en lösning:

=PRODUKTSUMMA(AVRUNDA(D2:D4;0))

Nr 103
F: I en kolumn sker summering av flera värden som ligger på rader. Ibland förekommer det tomma celler varför felvärden uppstår. Dessa påverkar också mina summeringar i kolumnen. Hur ska formeln se ut för att summera de värden som finns?
S: Enklast är att använda formeln:

=SUMMA.OM(K1:K100;">0";K1:K100)

Om det förekommer även negativa värden som ska summeras kan följande matrisformel vara mer lämplig:

{=SUMMA(OM(ÄRTAL(K1:K100);K1:K100;""))}

Nr 102
F: I en kolumn har år och i en intilliggande värden för respektive år. NU behöver jag få fram året som har det senaste inmatade värdet - Hur gör jag?
S: Det kan lösas antingen med följande formel om inga tomma rader förekommer:

=INDEX(A2:A9;ANTAL(B2:B9))

eller om det förekommer tomma rader med matrisformeln:

{=INDEX(A2:A9;MAX(OM(B2:B19<>0;RAD(INDIREKT("1:"&RADER(B2:B9))))))}

Nr 101
F: Jag vill räkna medelvärdet för de två lägsta talen i en serie?
S: Om vi antar att serien ligger i cellområdet C11:M11 så löser följande matrisformel problemet:

{=MEDEL(MINSTA(C11:M11;RAD(1:2)))}