[Excel] formule die voorwaardelijk optelt *

Pagina: 1
Acties:

  • burlapp
  • Registratie: Februari 2004
  • Laatst online: 24-08 22:05
Ik ben al een hele tijd opzoek naar een formule voor excel, waarmee je aangeeft dat je een reeks waarden uit kolom y wil optellen, als in de kolom x de waarde 1 is gegeven. Als de waarde 0 mag de waarde niet meegenomen worden in de optelling.

Hier heb ik niks kunnen vinden wat erop leek....

Iemand een idee hoe dit moet???

  • Johnny Goodbye
  • Registratie: Augustus 2003
  • Laatst online: 25-08 11:43
het toverwoord is de functie ALS(). Zoek dit maar op in de help van excel

  • burlapp
  • Registratie: Februari 2004
  • Laatst online: 24-08 22:05
ja, ok, dat was ik misschien nog vergeten te vermelden, maar nu moet ik dat doen voor een 1000 waarden, met daartussen nog een aantal open gaten waar de formule niet op toegepast mag worden.

Ik kan voor elke rij wel steeds if.. then invoeren, maar dat schiet niet op, hoe doe ik het algemeen voor de hele kolom?

  • mrBussy
  • Registratie: December 2002
  • Laatst online: 24-08 16:19
Heel gemakkelijk:

=IF(A1=1;SUM(B1:B9);0)

edit:

Oeps... Spuit 11

[ Voor 26% gewijzigd door mrBussy op 23-11-2004 14:26 ]


  • burlapp
  • Registratie: Februari 2004
  • Laatst online: 24-08 22:05
hmm, ja, maar dat is voor 1 waarde, nu wil ik b1 optellen als c1 is 1, en b2 ALLEEN optellen als c2 ook 1 is.

Ik bovenstaand geval telt hij alles op als a1 = 1, en niks als a1 is 0, ik wil dus dat excel voor elke regel de situatie opnieuw beoordeeld

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB/AI

Front verplichte underscores

Dat kan toch nog steeds; zet naast de kolom een IF kolom en tel die op. Ook goed: een paar regels VBA maar dat werkt (wegens handtekeningen) alleen comfortabel als je de enige bent die het document gebruikt :)

Geef anders even de structuur die je hebt en de pogingen die je (hebt) (ge)waagd,
edit:
Ik heb trouwens je topictitel aangepast, 'excel formule' zegt wat weinig :)

[ Voor 30% gewijzigd door F_J_K op 23-11-2004 14:33 ]

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


  • jvo
  • Registratie: Augustus 2001
  • Laatst online: 04-10-2023

jvo

geen commentaar

Het kan in 1 keer met een matrix-formule:

Stel, in A1:A1000 staan de waardes 0 of 1 en in B1:B1000 staan de op te tellen waardes. De formule is dan:

=sum(if(A1:A1000=1,B1:B1000,0))
En dan afsluiten met ctrl+shift+enter

Met Nederlandse excel en taalinstellingen:
=som(als(A1:A1000=1;B1:B1000;0))
Wederom ctrl+shift+enter voor matrix-formule

Oh, en als het om 0 en 1 gaat waar je mee vergelijkt, doe je gewoon:
=som(A1:A1000*B1:B1000)
(Ctrl+shift+enter)

[ Voor 100% gewijzigd door jvo op 23-11-2004 14:41 ]


  • Johnny Goodbye
  • Registratie: Augustus 2003
  • Laatst online: 25-08 11:43
maak in de kolom D de volgende formule aan =b1*c1 en kopieer deze naar alle onderliggende kolommen. onderaan doe je een som op de d kolom. overal waar een 1 staat wordt dan opgeteld

  • burlapp
  • Registratie: Februari 2004
  • Laatst online: 24-08 22:05
Ik heb hem dus nu werkend, maar alleen als ik CRTL+SHIFT+ENTER doe, de kolom wordt niet aangepast als waarden veranderen. Iemand een idee hoe dat komt?

  • jvo
  • Registratie: Augustus 2001
  • Laatst online: 04-10-2023

jvo

geen commentaar

burlapp schreef op dinsdag 23 november 2004 @ 15:59:
Ik heb hem dus nu werkend, maar alleen als ik CRTL+SHIFT+ENTER doe, de kolom wordt niet aangepast als waarden veranderen. Iemand een idee hoe dat komt?
Welke versie van excel gebruik je? In 2000 kan ik geen setting vinden zo gauw.
(De 'kolom' is het resultaat van de matrix-formule neem ik aan)

Verwijderd

kijk eens naar de functie's:
som.als()
aantal.als()
Pagina: 1