Weergegeven resultaten: 1 t/m 7 van 7
  1. #1
    Gevorderd   Dieseltje's schermafbeelding
    Geregistreerd
    22 November 2007
    Locatie
    Genk
    Berichten
    175
    Bedankjes
    62
    Bedankt
    60 keer in 27 posts

    Glimlach Exel en willekeurige getallen genereren

    Kan je EXEL ( 2007 of 2010, liefst beiden) een reeks willekeurige getallen aan ,bvb, een reeks namen laten koppellen ??
    Bedoeling is om een een aantal deelnemers (max. 40) van een willekeurige startplaats te voorzien.
    Als er dan ook nog de mogelijkheid is om bepalde nummers op voorhand te elimineren dan zou dat helemaal de oplossing voor mijn probleem zijn.

    Of moet ik hiervoor weer een heel nieuw iets gaan gebruiken???
    Alle oplossingen zijn welkom, zolang ze maar op XP(sp3), Vista en W7 werken.

    Mijn dank op voorhand hebben jullie alvast.
    Ik slaap slecht, maar daar lig ik niet wakker van.

  2. #2
    PC-Freak   slicky's schermafbeelding
    Geregistreerd
    10 May 2005
    Locatie
    int westen van België
    Berichten
    1.357
    Bedankjes
    380
    Bedankt
    602 keer in 343 posts
    oke,
    je kan misschien hier al iets mee doen.
    dit is de code voor een macro die dus 40 unieke cijfers plaatst in kolom A, je kan die ook wijzigen hé
    je kan die koppelen aan een knop en wanneer je dan op de knop klik veranderen de nummers

    Code:
    Sub uniekenummers()
      Randomize
      For j = 1 To 40
        Cells(j, 1) = Rnd
      Next
        
      [A1:A40] = [index(rank(A1:A40,A1:A40),)]
    End Sub
    opgelost denk ik. plaats de code in een nieuwe module van VBA in excel.
    zet in "B1" het aantal deelnemers en voer de macro "uniekenummers" uit.
    leuk om dit eens te testen
    Code:
    Const StartRij As Long = 1
    Const Kolom As String = "A"
    Const LaagsteWaarde As Long = 1
    Public HoogsteWaarde As Long
    Public Sub UniekeNummers()
    HoogsteWaarde = ActiveSheet.Range("B1").Value
      ActiveSheet.Range(Cells(StartRij, Kolom), Cells(StartRij + ((HoogsteWaarde - LaagsteWaarde)), Kolom)).Value = Application.Transpose(UniekeRandomNummers(LaagsteWaarde, HoogsteWaarde))
    End Sub
    
    Public Function UniekeRandomNummers(Laagste As Long, Hoogste As Long) As Variant
      Dim RandomCollection As Collection, Getal As Long, UniekArray() As Long
      
      Set RandomCollection = New Collection
      UniekeRandomNummers = False
      Aantal = ((Hoogste - Laagste) + 1)
      ReDim UniekArray(1 To Aantal)
       
      On Error Resume Next
      
      'Creeer unieke getallen
      Do
        Getal = CLng(Rnd * (Hoogste - Laagste) + Laagste)
        RandomCollection.Add Getal, CStr(Getal)
      Loop Until RandomCollection.Count = Aantal
      
      On Error GoTo 0
      'Unieke gegevens copieren in Array
      For Getal = 1 To Aantal
        UniekArray(Getal) = RandomCollection(Getal)
      Next Getal
      
      'Gegevens teruggeven
      UniekeRandomNummers = UniekArray
      
      'Ruim op
      Set RandomCollection = Nothing
      Erase UniekArray
    End Function
    suc6
    Laatst gewijzigd door slicky; 28 June 2014 om 15:15

  3. #3
    PC-Freak   slicky's schermafbeelding
    Geregistreerd
    10 May 2005
    Locatie
    int westen van België
    Berichten
    1.357
    Bedankjes
    380
    Bedankt
    602 keer in 343 posts
    toevoeging
    de kolom wissen bij veranderen van aantal deelnemers
    maak nieuwe macro aan met deze code
    Code:
    Sub wissen()
        Range("A1:A40").Select
        Selection.ClearContents
        Range("B1").Select
    End Sub
    en voeg de rode tekst toe aan de code van die ander hierboven

    Code:
    Const StartRij As Long = 1
    Const Kolom As String = "A"
    Const LaagsteWaarde As Long = 1
    Public HoogsteWaarde As Long
    Public Sub UniekeNummers()
    Call wissen
    HoogsteWaarde = ActiveSheet.Range("B1").Value
      ActiveSheet.Range(Cells(StartRij, Kolom), Cells(StartRij + ((HoogsteWaarde - LaagsteWaarde)), Kolom)).Value = Application.Transpose(UniekeRandomNummers(LaagsteWaarde, HoogsteWaarde))
    End Sub

  4. #4
    Gevorderd   Dieseltje's schermafbeelding
    Geregistreerd
    22 November 2007
    Locatie
    Genk
    Berichten
    175
    Bedankjes
    62
    Bedankt
    60 keer in 27 posts
    Citaat Oorspronkelijk geplaatst door slicky Bekijk bericht
    plaats de code in een nieuwe module van VBA.



    VBA.......VanBovenAchteraan ????

    Graag ietsje meer details AUB ? Ikke maar héél klein beetje Excel kennis, spijtig genoeg. En vééél te oud om nog veel bij te leren.
    Ik slaap slecht, maar daar lig ik niet wakker van.

  5. #5
    PC-Freak   slicky's schermafbeelding
    Geregistreerd
    10 May 2005
    Locatie
    int westen van België
    Berichten
    1.357
    Bedankjes
    380
    Bedankt
    602 keer in 343 posts
    nooit te oud om bij te leren!!!!
    maar als je wil kan ik het ook aanmaken voor jou hoor, stuur anders eens het bestand door

    VBA (visual basic) open je in excel door rechtsklikken en dan "programmacode weergeven"( of alt+F11)

  6. #6
    Gevorderd   Pjotr's schermafbeelding
    Geregistreerd
    12 May 2005
    Berichten
    234
    Bedankjes
    28
    Bedankt
    79 keer in 67 posts
    je kan toch gewoon de functie "=ASELECTTUSSEN(1;30)" gebruiken en met F9 deze telkens wijzigen.
    Je kan wel kiezen tussen welke getallen je blijft, maar getallen uitsluiten gaat niet

  7. #7
    Gevorderd   Pjotr's schermafbeelding
    Geregistreerd
    12 May 2005
    Berichten
    234
    Bedankjes
    28
    Bedankt
    79 keer in 67 posts
    Citaat Oorspronkelijk geplaatst door Pjotr Bekijk bericht
    je kan toch gewoon de functie "=ASELECTTUSSEN(1;30)" gebruiken en met F9 deze telkens wijzigen.
    Je kan wel kiezen tussen welke getallen je blijft, maar getallen uitsluiten gaat niet
    Zo is er natuurlijk kans dat er meerdere keren hetzelfde getal voorkomt.
    op volgende link kan je zien hoe het wel moet.

    http://www.schoutsen.nl/excel-formul...ge-lijst-maken

  8. De volgende gebruiker bedankt Pjotr voor deze nuttige post:

    Dieseltje (18 February 2017)

Discussie informatie

Users Browsing this Thread

Momenteel bekijken 1 gebruikers deze discussie. (0 leden en 1 gasten)

Soortgelijke discussies

  1. Vraagje over exel formule
    Door de_witte in forum Office
    Reacties: 5
    Laatste bericht: 21 March 2006, 18:32
  2. Visual Basic In exel
    Door NickB in forum Office
    Reacties: 6
    Laatste bericht: 16 March 2006, 22:00
  3. Vraagje ivm exel
    Door kilroy in forum Office
    Reacties: 11
    Laatste bericht: 4 March 2006, 17:49
  4. Exel probje !!
    Door guido99 in forum Office
    Reacties: 7
    Laatste bericht: 2 December 2005, 23:17
  5. Exel probje !!
    Door guido99 in forum Office
    Reacties: 2
    Laatste bericht: 23 August 2005, 15:39

Favorieten/bladwijzers

Favorieten/bladwijzers

Regels voor berichten

  • Je mag geen nieuwe discussies starten
  • Je mag niet reageren op berichten
  • Je mag geen bijlagen versturen
  • Je mag niet je berichten bewerken
  •