• 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.

random nummer een nummer toewijzen

Status
Niet open voor verdere reacties.

snip272

Gebruiker
Lid geworden
8 okt 2016
Berichten
15
Hallo

ik heb een aantal deelnemers die ik graag rendom per 2 deelnemers een team nummer wil geven.
ik heb er een voorbeeld bijgedaan met informatie.

wie kan mij helpen

gr Snip
 

Bijlagen

Met een macrotje

Code:
Sub jec()
 ar = [transpose(Row(1:13))]
 Range("C5:C30").ClearContents
 
 Randomize
 For i = 1 To 26
   a = Filter(ar, "x", False)(Int(Rnd() * (UBound(Filter(ar, "x", False)) + 1)))
   Range("C" & Rows.Count).End(xlUp).Offset(1) = a
   If Application.CountIf(Range("C5:C30"), a) = 2 Then ar(a) = "x"
 Next
End Sub

Voor de duidelijkheid ook maar het bestandje toegevoegd.
 

Bijlagen

Laatst bewerkt:
bedankt bedankt bedankt

ik ga hier zeker mijn voordeel mee doen.

ik ga ervan uit dat het voor stel van JVeer degene is wat ik wilde

gr Snip
 
snip en JV, met het macrtootje kan het voorkomen dat een team uit 2 gelijke spelers bestaat.
 
De macro maakt alleen random teams van 2.
Als dat niet genoeg is, snap ik ook niet wat er wel precies moet gebeuren..
 
2 regels VBA:

Code:
Sub M_snb()
  [B5:B30] = "=rand()"
  [B5:B30] = [index(int((rank(B5:B30,B5:B30)+1)/2),)]
End Sub
 
bedankt voor de hulp ga mijn voordeel ermee doen

bedankt voor de hulp ga mijn voordeel ermee doen
 
hier de sub van snb in een loopje geplaatst (het loopje voor de zekerheid is beperkt tot 5000 pogingen per keer)
hij kijkt of een team niet uit de zelfde nummers bestaat en hij kijkt ook of er de zelfde teams gevormd worden.
formules daar voor staan op het werkblad,en werken alleen met excel 365
het kan ook in gewoon excel of in de macro, maar dit ging makkelijker. voor mijn.
als je zo iets voor een andere versie van excel wil moet je dat even melden op dit forum.
 

Bijlagen

Laatst bewerkt:
@Sylv


Het resultaat van de code leidt altijd tot 2 verschillende deelnemers per team en volledig verschillende teamsamenstelling. :rolleyes:
 
Laatst bewerkt:
Gegeven de mooie compacte methode van SNB kan het in office 365 in 1 formule

Code:
=SORTEREN.OP(INTEGER((REEKS(26)+1)/2);ASELECT.MATRIX(26))
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan