• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

als-functie in verschillende kolommen

Status
Niet open voor verdere reacties.

gonish

Gebruiker
Lid geworden
22 sep 2010
Berichten
15
Beste Helpers,

Ik ben bezig om een meetmodel te maken voor een database, hiermee wil ik de volledigheid meten.

Nu zijn er in de database erg veel lege cellen, deze cellen zijn lastig te meten omdat het bereik kan varieren. Er kunnen namelijk rijen bijkomen in de database waardoor het bereik verder moet zijn. Een onbeperkt bereik is niet mogelijk omdat er dus ook lege cellen onder de database zitten, deze telt hij dan ook.
Deze formule gebruik ik hiervoor:
=AANTAL.LEGE.CELLEN(INDIRECT("database!C4:C"&AANTALARG(database!B:B)+2))

Dan zijn er ook nog cellen met een "0" erin, deze tellen ook mee als lege cellen want deze bevatten geen informatie.
Hiervoor gebruik ik deze formule:
=AANTAL.ALS(database!C4:C65000;0)

Een simpele formule zoals jullie kunnen zien.

Nu wil ik een extra functie toevoegen aan deze formules.
Namelijk dat ik alleen de lege cellen (dus lege cel of met 0 erin) meet waarin courant = j of courant = n of courant = x.
Dus eigenlijk is het dan zo dat hij alleen de artikelnummers moet tellen waarbij courant = j en een vlak leeg is.
Om dit duidelijk te maken heb ik in het bestandje de vlakken geel gekleurd die ik bedoel.

In het 2e blad staan de formules die ik gebruik en de gegevens die ik nu meet, de tweede tabel zijn de gegevens zoals ik ze wil hebben (dat moet dus de uitkomst zijn van de nieuwe formules). Ik wil mijn huidige formules behouden, omdat deze doen wat ik wil in mijn echte database.

Enige probleem is dat ik de nieuwe functie van het courant-zijn er niet in krijg, iemand die me kan helpen ? :o

Alvast bedankt voor het lezen!! :love:
 

Bijlagen

Laatst bewerkt:
misschien met een matrix formule

Hallo Gonish,

Ik heb even zitten stoeien met je voorbeeld omdat ik ook een tijdje bezig ben met het ophalen van gegevens met meerdere voorwaarden. Het lukt me niet om alleen de nullen te tellen. Ik krijg dan dus ofwel resultaat 0+leeg of resultaat leeg (het verschil is dan 0).

Misschien dat je hiermee een begin hebt.

Voor 0+leeg de matrixformule (dus afsluiten met Ctrl+shft+enter)
{=SOM(ALS((database!F4:F65000="J")*(database!C4:C65000=0);1;0))}
{=SOM(ALS((database!F4:F65000="J")*(database!D4:D65000=0);1;0))}
{=SOM(ALS((database!F4:F65000="J")*(database!E4:E65000=0);1;0))}

en voor lege cellen
{=SOM(ALS((database!F4:F65000="J")*(database!C4:C65000="");1;0))}
{=SOM(ALS((database!F4:F65000="J")*(database!D4:D65000="");1;0))}
{=SOM(ALS((database!F4:F65000="J")*(database!E4:E65000="");1;0))}

Als een van de experts er ook nog een blik op wil werpen dan gaat het vast lukken.

Groet,
Pieter
 
Beste pieter,

heel erg bedankt voor je antwoord, hiermee ben ik heel veel geholpen zelfs :thumb:
(vooral de 1e formules, want ik wist niet dat die 0 en leeg tegelijk meten ook kon)
ik had ze daarom apart gedaan en dan bij elkaar opgeteld =P

heb even gegoogled en ik heb de matrixformules gevonden (die kende ik nog niet)
nu denk ik dat de 1e formule-reeks 0 en leeg meet omdat de matrix-formules danwel 0 danwel leeg als ISFOUT ziet, waardoor hij ze bij elkaar opteld..

ik gebruik nu dus alleen jou bovenste reeks formules + dat ik de "J" heb veranderd door een naam-bepaling (hierdoor kan ik j / n / x wisselen wanneer ik wil)
dit kan je vinden onder : Formules -> gedefinieerde namen -> namen beheren
daar kan je de j in een n / x veranderen waardoor hij andere courant telt ;)

het staat allemaal in de bijlage..
 

Bijlagen

Laatst bewerkt:
mooi

Hallo Gonish,

Mooi dat ie zo werkt. Die bereiknamen had ik even over het hoofd gezien. Die kun je natuurlijk ook mooi in je formule verwerken. En voor het fraaie misschien ook een RngCourant aanmaken?

Succes verder.

Groet,
Pieter
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan