[Excel 2007] namen uit bepaalde cellen willekeurig invullen

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • dulghar
  • Registratie: Augustus 2003
  • Laatst online: 27-06-2022
Ik probeer een speelschema te maken. Nu moeten er op elke maandag van de week 4 namen in gevuld worden van de 6 beschikbare. Nu had ik op internet de volgende formule gevonden:
code:
1
=INDEX($A:$A,RANDBETWEEN(1,COUNTA($A:$A)),1)


Wanneer ik dit in het nederlands vertaal komt er het volgende uit:
code:
1
=INDEX($A:$A;(ASELECTTUSSEN(1;AANTAL.ALS($A:$A));1)


Maar dan krijg ik een melding dat er te weinig argumenten zijn ingevuld.
Maar ik heb geen idee wat ik mis. Ik heb de code letterlijk gekopieerd en geplakt.

Misschien dat jullie nog een betere manier weten om dit te maken?

Acties:
  • 0 Henk 'm!

  • --Niels--
  • Registratie: September 2004
  • Laatst online: 20:41
Ten eerste, in de Nederlandse formule zitten 4 openingshaakjes en 3 sluithaakjes. Het tweede haakje moet weg, deze staat ook niet in de eerste.

Als je de formule in Excel hebt, kun je in de balk bovenaan, precies zien welke argumenten elke functies moet hebben, hierdoor kun je ook zien dat de functie aantal.als, not een tweede argument moet hebben, namelijk een criteria. <-- Dit is een tip voor de toekomst, want aantal.als is niet de functie die je moet hebben.

De juiste functie in het Nederlands is:
code:
1
=INDEX($A:$A;ASELECTTUSSEN(1;AANTALARG($A:$A));1)


Deze vertaling heb ik gekregen door de code even in een macro'tje te plakken en d.m.v. de volgende code in een nieuwe cel laten plakken:
code:
1
ActiveCell.FormulaR1C1 = "=INDEX(C1,RANDBETWEEN(1,COUNTA(C1)),1)"

Dan is Excel namelijk zo vriendelijk om de Engelse functienamen om te zetten in Nederlandse. (C1 staat b.t.w. voor $A:$A)

Dan je laatste vraag, is er misschien nog een betere manier. Ik heb geen idee, maar dit lijkt goed te werken :) .

Acties:
  • 0 Henk 'm!

  • dulghar
  • Registratie: Augustus 2003
  • Laatst online: 27-06-2022
--Niels-- schreef op zondag 11 oktober 2009 @ 20:28:
Ten eerste, in de Nederlandse formule zitten 4 openingshaakjes en 3 sluithaakjes. Het tweede haakje moet weg, deze staat ook niet in de eerste.

Als je de formule in Excel hebt, kun je in de balk bovenaan, precies zien welke argumenten elke functies moet hebben, hierdoor kun je ook zien dat de functie aantal.als, not een tweede argument moet hebben, namelijk een criteria. <-- Dit is een tip voor de toekomst, want aantal.als is niet de functie die je moet hebben.

De juiste functie in het Nederlands is:
code:
1
=INDEX($A:$A;ASELECTTUSSEN(1;AANTALARG($A:$A));1)


Deze vertaling heb ik gekregen door de code even in een macro'tje te plakken en d.m.v. de volgende code in een nieuwe cel laten plakken:
code:
1
ActiveCell.FormulaR1C1 = "=INDEX(C1,RANDBETWEEN(1,COUNTA(C1)),1)"

Dan is Excel namelijk zo vriendelijk om de Engelse functienamen om te zetten in Nederlandse. (C1 staat b.t.w. voor $A:$A)

Dan je laatste vraag, is er misschien nog een betere manier. Ik heb geen idee, maar dit lijkt goed te werken :) .
Thanks! Nu werkt de formule wel inderdaad! :). Ik had als vertalen voor COUNTA op google AANTAL.ALS gevonden. Vandaar dat het bij mij niet werkte.

Alleen worden er nu regelmatig namen dubbel ingegezet. Heb je misschien ook nog een idee hoe ik dat kan voorkomen?

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Tsja, persoonlijk zou ik zo'n schema gewoon even handmatig maken. Kopieer het volgende even naar notepad, vervang countif(s) met aantal(len).als, en "," met ";". Als je het plakt zie je hoe ik het zou doen.. ;)
countifs bestaat trouwens sinds Excel 2007, dus nog niet in 2003.
a	=A1	=A2	=A3	=A4			=A1	=A2	=A3	=A4	=A5	=A6
b	=A5	=A6	=B1	=D1	=COUNTIF(B:E,A1)	=A1	=COUNTIFS($B:$B,H$1,$C:$C,$G2)+COUNTIFS($D:$D,H$1,$E:$E,$G2)	=COUNTIFS($B:$B,I$1,$C:$C,$G2)+COUNTIFS($D:$D,I$1,$E:$E,$G2)	=COUNTIFS($B:$B,J$1,$C:$C,$G2)+COUNTIFS($D:$D,J$1,$E:$E,$G2)	=COUNTIFS($B:$B,K$1,$C:$C,$G2)+COUNTIFS($D:$D,K$1,$E:$E,$G2)	=COUNTIFS($B:$B,L$1,$C:$C,$G2)+COUNTIFS($D:$D,L$1,$E:$E,$G2)	=COUNTIFS($B:$B,M$1,$C:$C,$G2)+COUNTIFS($D:$D,M$1,$E:$E,$G2)
c	=C1	=B2	=E1	=C2	=COUNTIF(B:E,A2)	=A2	=COUNTIFS($B:$B,H$1,$C:$C,$G3)+COUNTIFS($D:$D,H$1,$E:$E,$G3)	=COUNTIFS($B:$B,I$1,$C:$C,$G3)+COUNTIFS($D:$D,I$1,$E:$E,$G3)	=COUNTIFS($B:$B,J$1,$C:$C,$G3)+COUNTIFS($D:$D,J$1,$E:$E,$G3)	=COUNTIFS($B:$B,K$1,$C:$C,$G3)+COUNTIFS($D:$D,K$1,$E:$E,$G3)	=COUNTIFS($B:$B,L$1,$C:$C,$G3)+COUNTIFS($D:$D,L$1,$E:$E,$G3)	=COUNTIFS($B:$B,M$1,$C:$C,$G3)+COUNTIFS($D:$D,M$1,$E:$E,$G3)
d	=B1	=E1	=C1	=D1	=COUNTIF(B:E,A3)	=A3	=COUNTIFS($B:$B,H$1,$C:$C,$G4)+COUNTIFS($D:$D,H$1,$E:$E,$G4)	=COUNTIFS($B:$B,I$1,$C:$C,$G4)+COUNTIFS($D:$D,I$1,$E:$E,$G4)	=COUNTIFS($B:$B,J$1,$C:$C,$G4)+COUNTIFS($D:$D,J$1,$E:$E,$G4)	=COUNTIFS($B:$B,K$1,$C:$C,$G4)+COUNTIFS($D:$D,K$1,$E:$E,$G4)	=COUNTIFS($B:$B,L$1,$C:$C,$G4)+COUNTIFS($D:$D,L$1,$E:$E,$G4)	=COUNTIFS($B:$B,M$1,$C:$C,$G4)+COUNTIFS($D:$D,M$1,$E:$E,$G4)
e	=B1	=B2	=D1	=C2	=COUNTIF(B:E,A4)	=A4	=COUNTIFS($B:$B,H$1,$C:$C,$G5)+COUNTIFS($D:$D,H$1,$E:$E,$G5)	=COUNTIFS($B:$B,I$1,$C:$C,$G5)+COUNTIFS($D:$D,I$1,$E:$E,$G5)	=COUNTIFS($B:$B,J$1,$C:$C,$G5)+COUNTIFS($D:$D,J$1,$E:$E,$G5)	=COUNTIFS($B:$B,K$1,$C:$C,$G5)+COUNTIFS($D:$D,K$1,$E:$E,$G5)	=COUNTIFS($B:$B,L$1,$C:$C,$G5)+COUNTIFS($D:$D,L$1,$E:$E,$G5)	=COUNTIFS($B:$B,M$1,$C:$C,$G5)+COUNTIFS($D:$D,M$1,$E:$E,$G5)
f	=C1	=C2	=E1	=B2	=COUNTIF(B:E,A5)	=A5	=COUNTIFS($B:$B,H$1,$C:$C,$G6)+COUNTIFS($D:$D,H$1,$E:$E,$G6)	=COUNTIFS($B:$B,I$1,$C:$C,$G6)+COUNTIFS($D:$D,I$1,$E:$E,$G6)	=COUNTIFS($B:$B,J$1,$C:$C,$G6)+COUNTIFS($D:$D,J$1,$E:$E,$G6)	=COUNTIFS($B:$B,K$1,$C:$C,$G6)+COUNTIFS($D:$D,K$1,$E:$E,$G6)	=COUNTIFS($B:$B,L$1,$C:$C,$G6)+COUNTIFS($D:$D,L$1,$E:$E,$G6)	=COUNTIFS($B:$B,M$1,$C:$C,$G6)+COUNTIFS($D:$D,M$1,$E:$E,$G6)
	=C1	=D3			=COUNTIF(B:E,A6)	=A6	=COUNTIFS($B:$B,H$1,$C:$C,$G7)+COUNTIFS($D:$D,H$1,$E:$E,$G7)	=COUNTIFS($B:$B,I$1,$C:$C,$G7)+COUNTIFS($D:$D,I$1,$E:$E,$G7)	=COUNTIFS($B:$B,J$1,$C:$C,$G7)+COUNTIFS($D:$D,J$1,$E:$E,$G7)	=COUNTIFS($B:$B,K$1,$C:$C,$G7)+COUNTIFS($D:$D,K$1,$E:$E,$G7)	=COUNTIFS($B:$B,L$1,$C:$C,$G7)+COUNTIFS($D:$D,L$1,$E:$E,$G7)	=COUNTIFS($B:$B,M$1,$C:$C,$G7)+COUNTIFS($D:$D,M$1,$E:$E,$G7)
	=D1	=C3	=B1	=C2								

offtopic:
Eigenlijk is dat trouwens niet helemaal waar; ik laat iemand anders dit altijd doen, misschien een idee. ;) Die doet het trouwens ook gewoon handmatig door dit soort schema's te kopiëren van voorgaande jaren..

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • --Niels--
  • Registratie: September 2004
  • Laatst online: 20:41
dulghar schreef op zondag 11 oktober 2009 @ 20:32:
(...)
Alleen worden er nu regelmatig namen dubbel ingegezet. Heb je misschien ook nog een idee hoe ik dat kan voorkomen?
Ik denk niet dat dat mogelijk is met deze constructie. Als ik jouw doel goed begrijp, is deze formule in de praktijk denk ik ook niet heel handig, aangezien zodra je een cel in het blad wijzigt, hij de formule opnieuw uitvoert en er dus opeens andere namen in je speelschema staan.

Ik snap de werkwijze van het schema van pedorus nog niet helemaal, maar het ziet er controleerbaarder uit dan een formule met aselecttussen.