[Excel] Gegevens omzetten *

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hoi allemaal,

Voor school probeer ik een handige manier te vinden om een rapport te laten invullen.
Hiervoor worden gemiddeldes berekend.
Nu wil ik dat bijvoorbeeld een 4,7 wordt weergegeven als 5- en zo verder.
Het lastige bij gemiddeldes is, dat ongeacht of je laat afronden, excel de vele cijfers achter de komma ook leest. dus bijv. 7,67 leest hij als 7,6 ipv de afronding 7,7.
Ik heb al een opzet gemaat die werkt, alleen als ik alles tot 2 cijfers achter de komma moet verwerken wordt het wel een hele lange code.
Mijn vraag is kun je ook met ranges werken en zo ja hoe dan?

Dit is mijn gemaakte
code:
1
=ALS(ISGETAL('algemeen'!I6);ZOEKEN('algemeen'!I6{4;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;5;5,1;5,2;5,3;5,4;5,5;5,6;5,7;5,8;5,9;6};{"onv";"onv";"onv";"onv";"onv";"onv";"onv";"5-";"5-";"5";"5";"5";"5+";"5+";"5,5";"5,5";"5,5";"6-";"6-";"6";"6"});"")

(voor de overzichtelijkheid even ingekort)

Hij checkt dus of het gelijk is aan 4,5 dan is output "onv"
Nu heb ik liever bijvoorbeeld ALS(getal = tussen 4,5 en 4,65 dan "output" 4,5; als getal = tussen 4,65 en 4,85 dan output 5-. etc.

Hopelijk is het duidelijk wat ik bedoel anders hoor ik het graag.

[ Voor 0% gewijzigd door Verwijderd op 10-03-2010 15:24 . Reden: formule in codetags geplaatst ]


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Ik moet de auto in dus kort:
* ga niet werken met lange lange if statements, gebruik een hulptabel / hulpkolom icm verticaal zoeken
* als het puur opmaak is, kan je evt voorwaardelijke opmaak gebruiken (<5,75 onv; <5 5-, etc)
* als afronden niet werkt: doe *10 en rond naar beneden of naar boven af op gehele getallen, deel dan weer door 10.

Omdat het vast over Excel gaat zet ik er dat even bij in de topictitel. Welke versie?

[ Voor 11% gewijzigd door F_J_K op 09-03-2010 07:26 ]

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Gaat om Excel 2007

De situatie is dus gelukkig duidelijk.
Ik heb in Document 1 alle puntenlijsten zitten waar de gemiddeldes worden uitgerekend en afgerond op 1 cijfer achter de komma.
In een ander document staan alle vakken onder elkaar en worden de gegevens uit Document 1 gebruikt en omgezet naar de rapportcijfers. Dat zijn dus 5+, 7,5 of 8- enz.
Het vreemde is dat hij niet het afgeronde cijfer uitleest maar het onafgeronde gebruikt. Ook als ik in document 1 een extra kolom maak waarin ik *10 en afrond en weer deel door 10.
Heel apart.

Ik hoop dat het wel mogelijk is.

[ Voor 94% gewijzigd door Verwijderd op 09-03-2010 11:16 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op dinsdag 09 maart 2010 @ 00:46:
Hoi allemaal,

Voor school probeer ik een handige manier te vinden om een rapport te laten invullen.
Hiervoor worden gemiddeldes berekend.
Nu wil ik dat bijvoorbeeld een 4,7 wordt weergegeven als 5- en zo verder.
Het lastige bij gemiddeldes is, dat ongeacht of je laat afronden, excel de vele cijfers achter de komma ook leest. dus bijv. 7,67 leest hij als 7,6 ipv de afronding 7,7.
dit klopt niet helemaal. als je afrondt via de celopmaak, dan zal excel inderdaad met de nauwkeurigheid van het oorspronkelijke getal blijven verder rekenen (tenzij je in de opties instelt dat excel moet rekenen met de afgebeelde nauwkeurigheid, wat ik niet aanraad).
als je afrondt via de formule =afronden(celrefoorspronkelijkgetal;aantadecimalen) rekent excel verder met dat resultaat. dit kan je dus in de reeds voorgestelde vert.zoeken formule gebruiken om de uiteindelijke rapportcijfers weer te geven.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik snap de bedoeling wel van wat jullie schrijven, alleen weet ik niet hoe ik dit moet verwerken in mijn bestand.

als ik een hulptabel maak waarin de verschillende bereiken staan bijv. (>5,75 onv;) etc.
Hoe link ik dit dan aan de uitgerekende gemiddeldes en daarna in mijn bestand met rapporten?
Kortom hoe zien de verschillende de stappen er feitelijk uit?

Alvast bedankt

Acties:
  • 0 Henk 'm!

Verwijderd

de opzoektabel is andersom. klein gedeelte (niet alle benodigde bereiken zijn weergegeven):
0onv
4.9onv
55-
5.55+
66-
enz...

en dan de
code:
1
=VERT.ZOEKEN(AFRONDEN(celmetonafgerondresultaat;1);bovenstaandeopzoektabelbereik;2;WAAR)

waarschijnlijk zal je ook de bereiken en de afrondformule moeten aanpassen (afronden.boven, afronden.beneden of afronden.n.veelvoud of zelf een aangepaste afrondingsformule schrijven, bv. =AFRONDEN(celmetonafgerondresultaat-0.05;1) )

Acties:
  • 0 Henk 'm!

  • MrAngry
  • Registratie: December 2001
  • Laatst online: 20:11
Er spelen dus twee dingen, dat afrond probleem wat heretic oplost en je functie probleem. Stel nou dat je dat afrond probleem hebt opgelost dan heb je dus allemaal cijfers die er hetzelfde uit zien qua opmaak: <helegetal,decimaal>
Je kan dan een formule maken op dat getal, bijvoorbeeld:
=IF(VALUE(RIGHT(A1;1))>=7; VALUE(LEFT(A1;1))+1&"-"; VALUE(LEFT(A1;1))&"+")
Als, het decimaal groterdan of gelijk aan 7 is , dan helegetal+1 en een -, anders helegetal en een +.

Dit kan vast nog makkelijker (isoleren decimaal en hele getal), maar dat weet ik niet uit m'n hoofd :)Uiteraard even aanpassen naar wensen en smaken.

edit of wat hij ^^ zegt :)

Er is maar één goed systeem en dat is een geluidsysteem - Sef


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 16:33
Als aanvulling op _heretic_: De functie vert.zoeken zoekt in de eerste kolom naar een getal en als dat gevonden is, komt de waarde in de tweede (vandaar de 2 in zijn formule) kolom terug. Het vierde argument in de formule maakt het makkelijk voor TS: Als je daar "waar" intypet gaat Excel benaderen, als het getal niet gevonden is, op zoek naar de hoogste waarde die kleiner is dan de zoekwaarde. Hierdoor hoef je ook geen moeite te doen met afronden. Je hoeft in de tabel alleen de grenswaarden aan te geven.
In _heretic_'s tabel zou dat nog niet helemaal goed gaan, bijvoorbeeld een 5,4 wordt (hoogste waarde die kleiner is = 5) een 5-, maar dat is eenvoudig aan te passen.
Pagina: 1