Toon posts:

Aantal als met alleen cijfers

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo allemaal,

Ik heb een aantal codes waarvan ik wil weten hoeveel er nou onder de 6 vallen. Zo heb ik bijvoorbeeld de codes
1A, 2A, 3A, 4A, 5A, 6A, 7A, 8A, 9A, 10A, 11A, 12A, 13A etc.
Het lukt me niet om dit met aantal.als(A:A;"<=6") te doen omdat hij ook de letter er achter pakt. Eventueel met aantal.als(A:A;"<=6*") lukt ook niet want dan komt er een verkeerd getal uit (moet gewoon 6 uitkomen!).

Alvast enorm bedankt!!

mvg

Alle reacties


Acties:
  • 0 Henk 'm!

  • Atanamir
  • Registratie: December 2014
  • Laatst online: 29-09 16:11
Omdat je waardes geen getallen zijn kun je geen normale countif formule gebruiken.
Dit zal via een array formule moeten waarbij je eerst alleen het getal uit de cel pakt, en vervolgens kijkt of het onder de 7 valt.

Voor getallen 0-9 werkt dat prima met deze formule: (Engelstalige excel...)
{=SUM(IF(VALUE(LEFT(A1:G1;1))<7;1;0))}

Echter bij getallen vanaf 10 gaat dat niet meer werken aangezien dan alleen het linker getal wordt gepakt. Je zou dan eerst nog weer kunnen kijken of het 2e karakter van links gezien nog een getal is, en vervolgens de formule daarop aanpassen, maar dan wordt het wel heel complex.

{=SUM(IF(VALUE(IF(ISNUMBER(VALUE(LEFT(A1:J1;2)));LEFT(A1:J1;2);LEFT(A1:J1;1)))<7;1;0))}

Wellicht beter om te kijken of je de string niet kan splitsen naar 2 cellen, of een stukje VBA hiervoor te gebruiken?

Acties:
  • +1 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Als er altijd 1 karakter rechts staat, kan je in de hulpkolom juist alles splitsen tot het laatste karakter. Dat kan met LENGTE() en DEEL(). Probleem is dat het dan nog als string van karakters wordt gezien. Dat kan je oplossen door in de formule +0 te doen. En dan werkt de AANTAL.ALS gewoon :)

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


Acties:
  • +1 Henk 'm!

  • Atanamir
  • Registratie: December 2014
  • Laatst online: 29-09 16:11
+1 voor simplicity. Altijd beter dan complexe formules waarin makkelijk een foutje sluipt!

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Enorm bedankt voor jullie snelle reactie. Voor nu is het prima als het alleen voor de getallen 0 t/m 9 werkt. Echter als ik de formule van Atanamir toepas (toegepast in de Nederlandse Excel) komt hier een uitkomst van 1 uit. Dit is dan de formule: =AANTAL(ALS(WAARDE(LINKS(A:A;1))<7;1;0)). Heb ik iets verkeerds gedaan of?

Alvast bedankt weer!

Acties:
  • 0 Henk 'm!

  • Atanamir
  • Registratie: December 2014
  • Laatst online: 29-09 16:11
Array formule toegepast? Dus ctrl+shift+enter ipv alleen enter?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Excusus, dat had ik niet gedaan. Echter als ik dat nu wel doe dan komt het aantal cellen er gewoon uit. Dus stel er staan 19 codes in (1A, 2A,3A,.. 19A. ) dan komt hier ook 19 uit.

Acties:
  • +1 Henk 'm!

  • Chief
  • Registratie: Januari 2009
  • Laatst online: 03:48
Ja, dat klopt omdat 19 als een 1 wordt gezien, je leest nl de meest linkse karakter.

Kan je een hulpkolom maken die de meest rechtse karakter weglaat middels de functie:

=LEFT(A1,LEN(A1)-1)
Vervolgens sumif op de hulpkolom?

Ik kwam, ik zag, ik ging er keihard vandoor


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dat kan natuurlijk ook Chief. Vroeg me alleen af of er ook een optie was om dit zonder hulpkolom op te lossen. In ieder geval bedankt allen voor het meedenken!

Acties:
  • +1 Henk 'm!

  • Atanamir
  • Registratie: December 2014
  • Laatst online: 29-09 16:11
je moet je formule overigens nog wel even aanpassen... je hebt nu aantal(......) gepakt zie ik, en daardoor krijg je uiteraard precies het aantal cellen met een waarde terug. Als je SOM(.......) gebruikt krijg je alleen het aantal cellen terug dat aan je criterium voldoet.

Neemt niet weg dat 10A 11A 12A etc. ook met een 1 beginnen en dus worden meegeteld. Dus ofwel een hulpkolom gebruik (heeft de voorkeur doordat er dan minder snel iets misgaat), ofwel mijn 2e formule vertalen uit m'n eerdere post.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Super bedankt Atanimir voor je hulp! Ik ga even verder vogelen ;)

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

De hamvraag is hoe simpel of complex je codes zijn. Als alle codes bestaan uit een getal + 1 letter dan is het relatief simpel. Zijn er verschillende variaties dan wordt het snel moeilijker.

Of je een hulpkolom of een matrixformule gebruikt is om het even. Een matrixformule doet niets anders dan de hulpkolom in het geheugen opbouwen. Het voordeel van een hulpkolom is dat je je formule in twee delen splitst, het voordeel van een matrixformule is dat je in één keer klaar bent.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Alle codes bestaan uit een getal + 1 letter. Toch lukt het me nog steeds om het aantal van de codes die bijvoorbeeld onder de 6 vallen te berekenen.

Acties:
  • 0 Henk 'm!

  • Taygeta
  • Registratie: April 2005
  • Laatst online: 11:26

Taygeta

KTM 790 Adventure

code:
1
=IF(LEFT(A1;LEN(A1)-1)+0<7;LEFT(A1;LEN(A1)-1)+0;"")

Waarbij A1 de cell is met de waarde.
Hij laat niets zien als het getal minder is dan 7.
Daarna kan je gewoon opsommen/tellen ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hoi Chief,

Ik heb jou optie ook geprobeerd alleen hij sorteert dan wel heel netjes de letter eruit, alleen als ik vervolgens het aantal cellen wil weten die <7 vallen komt er niks uit. Ik heb het op deze manier gedaan: =AANTAL.ALS(B:B;"<7"). Kolom B zijn dan alleen de cijfers, alleen ik denk dat ie nog steeds de letters meeneemt?

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

F_J_K in "Aantal als met alleen cijfers" geeft het antwoord op je laatste vraag. :)

[ Voor 9% gewijzigd door Lustucru op 24-05-2017 17:00 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben het spoor helemaal bijster denk ik, als ik +0 toevoeg in de formule (AANTAL.ALS(B:B;"<7+0"), komt hier een uitkomst uit van 17.

Acties:
  • 0 Henk 'm!

  • Arjan90
  • Registratie: September 2005
  • Laatst online: 07:52
Je moet in de hulpkolom +0 doen, niet in de aantal.als formule. Lost dat het niet op?

"Everybody is a genius. But if you judge a fish by its ability to climb a tree, it will live its whole life believing that it is stupid."


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Oh sorry wat stom, het is inmiddels gelukt. Iedereen bedankt voor het meedenken en sorry dat ik hier zo slecht in ben :)
Pagina: 1