Belangrijk: ComputerIdee Forum Huisregels | Wachtwoord vergeten?

Ga terug   Computer Idee Forum > Software > Software Overige

Notices

Antwoord
 
Discussietools Weergave
Oud 18 May 2017, 01:25   #1
BlackTiger
 
BlackTiger's schermafbeelding
 
Geregistreerd: 4 May 2005
Locatie: State Penitentiary
Berichten: 10.678
Standaard Excel ALS met SOM lukt niet helemaal

Ik wil het volgende doen, een kolom F2 tot en met F360 laten optellen.
Maar als er nergens iets in die kolom staat, wil ik ook niet dat er iets weergegeven wordt, dus ik wil geen 0 zien of geen "€ -" omdat er geen getallen zijn ingevuld.

Het gaat om Excel van Office 2013 en ik heb een kolom F met de gegevens en in 1 cel in G moet het resultaat komen.
Dus in cel G2 probeerde dat met de volgende code te doen:
Code:
=ALS(F2:F360=0;"";SOM(F2:F360))
Oftewel, als er in F2 t/m F360 niets vermeld staat, dan wil ik niets zien, anders (dus als er wel iets staat) wil ik de som van F2 t/m F360.

Dit blijkt alleen te lukken als ik een getal in F2 invul.
Als er in F2 niets staat en er een getal in F3 wordt ingevuld en F4 bijvoorbeeld, dan gebeurt er helemaal niets en blijft G2 gewoon helemaal leeg.

Klaarblijkelijk maak ik dus een denkfout met de formule, alleen weet ik niet welke.
Het lijkt er nu op alsof Excel denkt "als er ergens in F2:F360 niets staat hoef ik niks te doen".

Wat ik wil bereiken is dat er niets getoond wordt, totdat er ergens in de F kolom een getal wordt ingevuld en dan wil ik alles opgeteld hebben vanaf dat getal.

Wat moet ik veranderen?
__________________
Greetings, Black Tiger

-----------------------------
Don't argue with idiots, they will drag you down to their level, and beat you with experience.
BlackTiger is offline   Met citaat antwoorden
Oud 18 May 2017, 07:48   #2
FooBar
 
FooBar's schermafbeelding
 
Geregistreerd: 21 May 2005
Locatie: Elders
Berichten: 13.698
Standaard

Probeer deze eens:

Code:
=ALS(SOM(F2:F360)=0;"";SOM(F2:F360))
FooBar is offline   Met citaat antwoorden
Oud 18 May 2017, 08:27   #3
adbecude
 
Geregistreerd: 11 December 2006
Locatie: Slijkplaat (Ergens in de polder van zeeuws-vlaanderen)
Berichten: 366
Standaard

Ik zou het zo doen:

Code:
=ALS(AANTAL(F2:F360)=0;"";SOM(F2:F360)
__________________
Laat niet als dank...........maar laat ff weten of je probleem opgelost is....of niet.
Groet Ad.
adbecude is offline   Met citaat antwoorden
Oud 18 May 2017, 18:22   #4
FooBar
 
FooBar's schermafbeelding
 
Geregistreerd: 21 May 2005
Locatie: Elders
Berichten: 13.698
Standaard

Kan inderdaad ook. adbecude heeft verstand van Excel, ik zou doen wat hij zegt

De denkfout, trouwens, is dat F2:F360 in de vergelijking F2:F360=0 niks is. Het is een bereik, maar je vertelt Excel niet wat met dat bereik te doen. Toets maar eens =F2:F360 in een andere cel. Wat je ook doet, het antwoord blijft altijd 0. De vergelijking F2:F360=0 levert dus als antwoord dus altijd 0=0 ofwel "WAAR".

Wat je wil controleren of er een speciale situatie aan de hand is binnen het bereik F2:F360. Die speciale situatie is wanneer er niks in staat, ofwel wanneer het aantal ingevulde cellen binnen F2:F360 nul is. De toets die je wil doen is dus AANTAL(F2:F360)=0.

De functie AANTAL() telt het aantal cellen binnen het opgegeven bereik waar iets in staat.
FooBar is offline   Met citaat antwoorden
Oud 18 May 2017, 22:04   #5
BlackTiger
 
BlackTiger's schermafbeelding
 
Geregistreerd: 4 May 2005
Locatie: State Penitentiary
Berichten: 10.678
Standaard

Citaat:
De denkfout, trouwens, is dat F2:F360 in de vergelijking F2:F360=0 niks is. Het is een bereik, maar je vertelt Excel niet wat met dat bereik te doen.
Aha, ik dacht dus dat het betekende dat "als er in dat bereik niks stond", maar je moet dus altijd daar iets zetten van als de som 0 is of iets anders als vergelijking.
Duidelijk. Moet ik dus even m'n gedachten patroon aanpassen.

@adbecude: In jouw oplossing staat op het einde een haakje te weinig, het afsluithaakje van het ALS statement staat er namelijk niet.
Als ik dat erbij zet werkt de formule wel.

De formule van Foobar werkt echter ook.

Hierdoor wordt ik dus een beetje nieuwsgierig waarom "aantal" beter zou zijn.
Even vooropgesteld dat ik de betekenis goed voor heb.....
Aantal telt het aantal getallen in een bereik.
Som telt een aantal getallen in een bereik bij elkaar op.

Waarom is aantal dan beter of begrijp ik iets verkeerd?
Ik ben even hier gaan kijken:
https://support.office.com/nl-nl/art...4-d23bf411294c

Maar dan lees ik weer het volgende:
Citaat:
Argumenten die getallen, datums of getallen in de vorm van tekst (bijvoorbeeld een getal tussen aanhalingstekens, zoals "1") zijn, worden geteld.
Loop ik hiermee dan niet het risico dat er met een typefout foutief opgeteld wordt? Gezien er o.a. ook bijv. datums geteld worden?
Of is dat bij "som" ook of...

Ik ben nogal nieuwsgierig bij dit soort dingen en probeer dan boven water te krijgen wat en of er een voordeel is.
Dat is bijv. weer handig om te weten voor toekomstige situaties.
__________________
Greetings, Black Tiger

-----------------------------
Don't argue with idiots, they will drag you down to their level, and beat you with experience.
BlackTiger is offline   Met citaat antwoorden
Oud 18 May 2017, 22:58   #6
Hans60
 
Geregistreerd: 18 November 2008
Berichten: 2.036
Standaard

Als je "som" gebruikt loop je het risico dat je de fout in gaat als er in één cel bijv. "1" staat en en een andere "-1". De som is dan 0, maar als je "aantal" gebruikt worden het aantal niet-lege cellen geteld, en.dat is in dit geval 2. Bij "som" zou je dus niets zien, bij "aantal" wel.
Om fouten bij de invoer te voorkomen zou je op deze cellen een validatie kunnen plaatsen waarmee je aangeeft dat alleen getallen mogen worden ingevoerd.
__________________
Angst voor de dood voorkomt niet dat je sterft,
het belet je alleen ten volle te leven

Laatst gewijzigd door Hans60 : 18 May 2017 om 23:00
Hans60 is offline   Met citaat antwoorden
Oud 19 May 2017, 06:50   #7
adbecude
 
Geregistreerd: 11 December 2006
Locatie: Slijkplaat (Ergens in de polder van zeeuws-vlaanderen)
Berichten: 366
Standaard

@FooBar
Citaat:
De functie AANTAL() telt het aantal cellen binnen het opgegeven bereik waar iets in staat
.
@Hans60
Citaat:
maar als je "aantal" gebruikt worden het aantal niet-lege cellen geteld
En met de functie AANTAL worden alléén de cellen waar en getal instaat meegerekend, dus cellen met tekst / spatie / leeg of leesteken worden genegeerd.

Zet maar eens een spatie of tekst in een optelbereik, en probeer de beide formules.
__________________
Laat niet als dank...........maar laat ff weten of je probleem opgelost is....of niet.
Groet Ad.

Laatst gewijzigd door adbecude : 19 May 2017 om 07:02
adbecude is offline   Met citaat antwoorden
Oud 20 May 2017, 16:51   #8
BlackTiger
 
BlackTiger's schermafbeelding
 
Geregistreerd: 4 May 2005
Locatie: State Penitentiary
Berichten: 10.678
Standaard

Citaat:
één cel bijv. "1" staat en en een andere "-1". De som is dan 0
Dan maakt het dus niet uit, want 2 is ook fout. En 0 is dan eerder goed want 1-1=0 dus qua som klopt dat eigenlijk.

Citaat:
Oorspronkelijk geplaatst door adbecude
Zet maar eens een spatie of tekst in een optelbereik, en probeer de beide formules.
Dat heb ik zojuist geprobeerd en er was geen verschil.
Ik heb in een cel een getal gezet, dan wat verderop in het bereik de letter d en een paar cellen verder een spatie en een paar cellen verder weer een getal.
Ongeacht welke formule er gebruikt werd in beide gevallen werden alleen de cijfers bij elkaar opgeteld.

Zou anders inderdaad wel een behoorlijk goed argument zijn, maar klaarblijkelijk trekt excel zich er niets leestekens of tekst of spaties aan in het bereik van een som.

Of is dat voor als je niets aangegeven hebt als celeigenschap? Dat aantal dan alleen cijfers neemt? Misschien handiger voor gemixte formules of kolommen met gemixte inhoud?
Ik heb bij mij die kolom ingesteld als zijnde inhoudelijk "financieel", dus getallen. Misschien verklaart dit dan dat het bij mij niet uit maakt welke formule ik gebruik dat excel zich niets van die letter en spaties aan trekt?
__________________
Greetings, Black Tiger

-----------------------------
Don't argue with idiots, they will drag you down to their level, and beat you with experience.

Laatst gewijzigd door BlackTiger : 20 May 2017 om 16:55
BlackTiger is offline   Met citaat antwoorden
Oud 20 May 2017, 18:28   #9
adbecude
 
Geregistreerd: 11 December 2006
Locatie: Slijkplaat (Ergens in de polder van zeeuws-vlaanderen)
Berichten: 366
Standaard

Black Tiger,

Je hebt het bij het goede eind, de functie AANTAL werkt bij de formules waar je de foutmelding #WAARDE wilt voorkomen.
Code:
=ALS(AANTAL(D4;E4)=2;D4*E4;"")
Maar als je bij een lege reeks geen 0 (nul) wilt zien gebruik ik hem ook.
Code:
=ALS(AANTAL(L4:L9)>0;SOM(L4:L9);"")
__________________
Laat niet als dank...........maar laat ff weten of je probleem opgelost is....of niet.
Groet Ad.
adbecude is offline   Met citaat antwoorden
Oud 20 May 2017, 22:49   #10
BlackTiger
 
BlackTiger's schermafbeelding
 
Geregistreerd: 4 May 2005
Locatie: State Penitentiary
Berichten: 10.678
Standaard

Ik had geen reeks, ik wilde alleen bij een bepaalde formule geen 0 in het vakje zien totdat er ergens een getal in het bereik was ingevuld.

Persoonlijk vind ik het wel fijn als ik een #waarde foutmelding zie, dan weet ik tenminste dat er ergens iets fout zit. Wel handig voor iemand als ik die niet zo heel vaak met excel werkt.

Maar het ook fijn om een voorbeeld te zien van de toepassing van "aantal", want ik heb wel eens vaker iets waarbij ik geen 0 wens te zien.
Krijgt dat normaliter wel weggewerkt met zo'n "als" statement, maar dat voorbeeld wat je nu geeft als tweede, daar heb ik eens een hele lange regel voor moeten gebruiken als ik het me goed herinner. Omdat ik dus niet van het "aantal" statement wist.
__________________
Greetings, Black Tiger

-----------------------------
Don't argue with idiots, they will drag you down to their level, and beat you with experience.
BlackTiger is offline   Met citaat antwoorden
Antwoord

Discussietools
Weergave

Regels voor berichten
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Forumnavigatie


Alle tijden zijn GMT +1. Het is nu 23:43.


Powered by vBulletin Version 3.8.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.