Den stora Excel/Google sheet-tråden

Permalänk
Avstängd

Den stora Excel/Google sheet-tråden

Tjo! Jag har börjat lära mig Excel/Google sheet (främst Google sheets dock på grund av att kund begär det).

Jag kan grundläggande kodning så jag kan följa syntax och sådant.

Allt jag lär mig just nu i Google sheet är att googla fram det. Men vissa saker hittar jag inte för de är lite specifika efterfrågade saker.

Här tänkte jag att andra kan dela med sig av sina Excel/Google sheet frågor så kan mer erfarne besvara i den mån de vill dela med sig av sina kunskaper.

Betrakta följande Google sheet kod:

f(x)="Lägst (%): " &(MIN(O3:O100)*100 &CHAR(10)&"Medel (%): " &AVERAGE(O3:O100)*100 &CHAR(10)&"Högst (%): " &MAX(O3:O100)*100)

Den visar alltså:
"Lägst (%): 0
Medel (%): 0
Högst (%): 0"

Men jag vill att det skall stå procent höger om siffran. Problemet är att &TO_PERCENT(MIN(O3:O100)) verkar inte fungera? Är det någon begränsning i hur man kan slå ihop syntax i Google sheet eller tänker jag fel kring omvandlingen? Att markera cellen och välja "Format" -> "Nummer" -> "Procenttal" gör ingen skillnad utan den fortsätter att visa i decimalform.

Detta är något jag googlat men inte hittat rätt kod för. Troligen är det TO_PERCENT som är lösningen, men hur får jag syntaxen rätt i cellen? Eller går det inte att kombinera vanlig "text" med syntaxen i &? Jag använder *100 som en tillfällig lösning för att omvandla decimal till procent. Vill även få bort antalet decimalplatser ned till max två.

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk
Medlem

Enda tipset jag har att dela med mig av är att alltid kontrollera vad som används som komma separator (alltså , eller .) innan ni drar in värden från ett engelskt program och har er dator/talformat på svenska

Visa signatur

13600KF, RTX 4070 FE, B760I, 32GB DDR4, NR200P

Permalänk
Medlem

Vad händer om du lägger till &" %" längst till vänster på varje rad i exemplet ovan? Kan iofs noll om Google Sheet, men logiskt borde det funka att du lägger till en sträng med procentteckent efter att du gjort din uträkning.
dvs

f(x)="Lägst (%): " &(MIN(O3:O100)*100&" %" &CHAR(10)&"Medel (%): " &AVERAGE(O3:O100)*100&" %" &CHAR(10)&"Högst (%): " &MAX(O3:O100)*100)&" %"

Edit: Har testat och det verkar inte som att "to_percent" lirar när du använder "&" för att slå ihop strängar med numeriska värden. Däremot så löser mitt tillägg i syntaxen det du vill lösa.

Edit2: Löste det!

="Lägst (%): "&text(to_percent(MIN(O3:O100)),"0%") &CHAR(10)&"Medel (%): "&text(to_percent(AVERAGE(O3:O100)),"0%") &CHAR(10)&"Högst (%): "&text(to_percent(MAX(O3:O100)),"0%")

Detta ger procent i heltal. Du ändrar antalet decimaler via parametern till funktionen text, t ex "0.0%" för 1 decimal osv.

Permalänk
Avstängd
Skrivet av clnr:

Vad händer om du lägger till &" %" längst till vänster på varje rad i exemplet ovan? Kan iofs noll om Google Sheet, men logiskt borde det funka att du lägger till en sträng med procentteckent efter att du gjort din uträkning.
dvs

f(x)="Lägst (%): " &(MIN(O3:O100)*100&" %" &CHAR(10)&"Medel (%): " &AVERAGE(O3:O100)*100&" %" &CHAR(10)&"Högst (%): " &MAX(O3:O100)*100)&" %"

Edit: Har testat och det verkar inte som att "to_percent" lirar när du använder "&" för att slå ihop strängar med numeriska värden. Däremot så löser mitt tillägg i syntaxen det du vill lösa.

Edit2: Löste det!

="Lägst (%): "&text(to_percent(MIN(O3:O100)),"0%") &CHAR(10)&"Medel (%): "&text(to_percent(AVERAGE(O3:O100)),"0%") &CHAR(10)&"Högst (%): "&text(to_percent(MAX(O3:O100)),"0%")

Detta ger procent i heltal. Du ändrar antalet decimaler via parametern till funktionen text, t ex "0.0%" för 1 decimal osv.

Du är Excelguden själv!

Det fungerar och justerar man "0%" till "0.0%" eller "0.00%" så får man antalet decimalplatser!

"&" verkar ju vara en syntax om att man vill fortsätta sin Excel f(x)= kodning så lustigt att "&" då verkar krocka då?

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk
Medlem

Ser ut som att ”&” är till för att slå ihop textsträngar och inte för att fortsätta att bygga på formler i allmänhet.

Permalänk
Avstängd

Nästa Excel-utmaning just nu för mig är att kunna skriva en formell som summerar pris per dag under ett antal dagar utifrån en kalender. Och då det är olika många dagar per månad så innebär det att vissa månader blir 30 dagar, medan andra blir 31.

Exempelvis har jag redan en rad som heter "Startdatum" och "Slutdatum" och sedan en som räknar antalet dagar, och en antalet dagar kvar. Kan det vara antalet dagar som då löser det problemet om man tar pris per dag multiplicerat med det?

Någon som kan tipsa mig om vilka funktioner man skall experimentera med då i Google Sheet för det ändamålet (summera flera månaders dagar)? Bara för att rikta mig åt rätt riktning, jag förväntar inget "serverat på silverfat".

Skrivet av clnr:

Ser ut som att ”&” är till för att slå ihop textsträngar och inte för att fortsätta att bygga på formler i allmänhet.

Aha. Jag förstår. Då skall jag prova att skriva funktioner efter varandra.

Löste en sak iaf nu:

=ROUND(SUM(A1:A100))

Denna summerar och rundar av summan från A1 till A100. Jag hade ett problem med att få summor med alldeles för många decimalplatser. Funderar på om man kan baka in antalet decimalplatser inuti SUM() funktionen som extra argument efter A1:A100? Hm!

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk
Medlem

ROUND har antal siffror som argument, dvs

=ROUND(SUM(A1:A100), 3)

ger ett svar på formatet x.yz

Permalänk
Avstängd

En ny utmaning: tillämpa ArrayFormula() på följande kod:

=(text(int((datedif(J3,K3+10,"m"))*Q3), "# ##0 000") &" kr | " &datedif(J3,K3+10,"m") &" månader")

Denna kod ovan räknar antalet månaderna mellan start- (J3) och slutdatum (K3) och multiplicerar detta med en fast månadskostnad längs Q3-kolumnen. Varsågod om du själv vill använda summera en fast kostnad under ett bestämt antal månader!

Utmaningen är att koden:

="Allt summerat: " &ARRAYFORMULA((datedif(J3:J69,((K3+10):(K69+10)),"m"))*(Q3:Q69)) &" kr"

... inte klarar av att räkna hela intervallet. Kruxet verkar ligga i att jag använder "K3+10" och "K69+10".

Dessa används för att runda uppåt till en hel månad istället för att returnera 0 i fallen när det inte är minst 28 dagar/1 hel månad men bör tolkas som det.

Eller bör jag kunna använda SUM() här? ArrayFormula verkar ha med att göra att returna svaret på divisioner mellan och längs olika kolumner.

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk

jag försöker skapa ett ratingsystem 1-5 utifrån vissa procentuella parametrar.

hur hade ni gjort?

har kikat här men det krånglar till: https://stackoverflow.com/questions/23080971/calculate-rank-o...

Permalänk
Avstängd

Har du ställt in så att du använder komma för att markera slut? Ofta är det semikolon i Sverige.

Permalänk
Skrivet av TANDEMCYKELN:

Har du ställt in så att du använder komma för att markera slut? Ofta är det semikolon i Sverige.

provade detta istället:
=OM(F26<=0,5*$F$31;5;OM(F26<=0,75*$F$31;4;OM(F26<=$F$31;3;OM(F26<=1,25*$F$31;2;1))))

får dock inte decimaler. går det att få till 1 decimal?

Permalänk
Avstängd
Skrivet av relevantia:

provade detta istället:
=OM(F26<=0,5*$F$31;5;OM(F26<=0,75*$F$31;4;OM(F26<=$F$31;3;OM(F26<=1,25*$F$31;2;1))))

får dock inte decimaler. går det att få till 1 decimal?

Jag antar att du menar då att du vill se siffror i stil med: 1.0, 1.1, 1.2, osv?

Du bör kunna markera cellen där funktionen körs och ställa in antalet decimalplatser.

1. Högerklicka cellen för funktionen -> Formatera celler -> Nummer -> "Decimalplatser" justera till 1. Tror standard är 2.

Engelsk bild över hur menyn ser ut för "Formatera celler":

Hojta till om det blev rätt eller om det fortfarande ger fel antal decimaler!

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk
Skrivet av AplAy:

Jag antar att du menar då att du vill se siffror i stil med: 1.0, 1.1, 1.2, osv?

Du bör kunna markera cellen där funktionen körs och ställa in antalet decimalplatser.

1. Högerklicka cellen för funktionen -> Formatera celler -> Nummer -> "Decimalplatser" justera till 1. Tror standard är 2.

Engelsk bild över hur menyn ser ut för "Formatera celler":
https://cdn.extendoffice.com/images/stories/doc-excel/limit-decimal-places/doc-limit-decimal-places-format-cells-2.png

Hojta till om det blev rätt eller om det fortfarande ger fel antal decimaler!

jag hittade lösningen:
=4*MAX(MIN(($B$2-B2)/$B$2,0.5),-0.5)+3

Permalänk

har en annan fråga:

har 3 flikar.

när jag sorterar i flik 1 eller 2 så förstörs flik 3.

hur kan man sortera utan att andra flikar förstörs?