Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: genereren getallen  (gelezen 8138 keer)

0 leden en 1 gast bekijken dit topic.

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
genereren getallen
« Gepost op: 27 januari 2005, 18:09:03 »
hallo,
binnen het bereikA1;A10 wil ik telkens andere decimale getallen krijgen die liggen tussen 10 en 20.
Daaraan zou ik dan een knop toewijzen.

binnen het bereik B1;B10 wil ik decimale getallen
tusen 1 en 10.
Ook hieraan verbind ik een knop.

Wie kan mij helpen aan de code hiervoor ?
beste dank.

profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #1 Gepost op: 27 januari 2005, 18:42:32 »
Hallo,

Zoiets kan je heel eenvoudig via een paar lijntjes code in Visual Basic. Als je nog enkele ogenblikken kunt wachten post ik straks in mijn reply wel een voorbeeldfile.

Groeten,
StriKe
0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #2 Gepost op: 27 januari 2005, 18:59:00 »
Zoals beloofd, in bijlage een voorbeeldbestand.

Mocht je nog vragen hebben, stel deze gerust.

Groeten,
StriKe
0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #3 Gepost op: 27 januari 2005, 19:26:20 »
dat is het wat ik nodig heb.  Bedankt.

Hoe verander in nu bvb de code als ik in dit bereik
even getallen wil tussen bvb50 en 100 ?

groeten,
edske
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #4 Gepost op: 27 januari 2005, 19:36:20 »
nog even dit
het bereik is I8 tot I18  en J8;J18

hoe pas ik dit best aan in de code ?

groeten
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #5 Gepost op: 27 januari 2005, 19:42:20 »
Hallo,

De code bereik je als volgt:

Ga via het menu Beeld naar werkbalken en daar roep je de werkbalk Werkset Besturingselementen op.

De eerste knop op de bovenste rij "Ontwerpmodus" moet ingedrukt zijn.

Klik nu op één van de knoppen rechts en kies voor "Programmacode weergeven".

Hier kom je nu in het codescherm waar je dus alles naar wens kan gaan aanpassen.

Standaard start de reeks dus op rij 1 zoals je ziet in de code, om deze te laten starten op rij acht moet je dit

For intTel = 1 To 10veranderen naar dit:
For intTel = 8 To 18
Om getallen tussen 50 en 100 te krijgen verander je dit:

Cells(intTel, 1) = 11 * Rnd + 10naar dit:
Cells(intTel, 1) = 51 * Rnd + 50
De 'formule' die hierboven gebruikt wordt (met Rnd) kan je terugvinden in de helptekst als je op het 'woordje' rnd gaat staan en dan op f1 drukt.

Dit is de formule die gebruikt wordt:

Int((bovengrens - benedengrens + 1) * Rnd + benedengrens)

Groeten,
StriKe

0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.191
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re:genereren getallen
« Reactie #6 Gepost op: 27 januari 2005, 19:47:49 »
Citaat
Ga via het menu Beeld naar werkbalken en daar roep je de werkbalk Werkset Besturingselementen op.

De eerste knop op de bovenste rij "Ontwerpmodus" moet ingedrukt zijn.

Klik nu op één van de knoppen rechts en kies voor "Programmacode weergeven".

Hier kom je nu in het codescherm waar je dus alles naar wens kan gaan aanpassen.

Of.... Extra, Macro, Macro's, eentje selecteren en Bewerken... klikken :)

SoftAid :) ;)
Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #7 Gepost op: 27 januari 2005, 20:12:40 »
Bedankt voor de snelle en adequate hulp.

Ik zal alles eens uittesten

groeten,
edske
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #8 Gepost op: 27 januari 2005, 20:36:18 »
nog een probleempje

als ik de code verander dan blijven de getallen verschijnen in
A1:A10

Hoe kan ik een ander bereik inbrengen ?
groeten
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #9 Gepost op: 27 januari 2005, 20:48:26 »
Hallo,

In de code zie je een lijntje staan met cells()

De parameters (hetgeen dus tussen haakjes staat) van die functie bepaald waar de inhoud terechtkomt.

cells(intTel, 1) is de opbouw van het stukje code die ik je oorspronkelijk heb gegeven.

intTel staat voor het rijnummer van de cel waarin zal worden geschreven, het getal 1 (één) staat voor de kolom.

Wens je die random getallen dus in kolom b, dan moet je die 1 vervangen door een twee enz...

Succes!

Groeten,
StriKe
0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #10 Gepost op: 27 januari 2005, 20:58:40 »
Bedankt voor de meesterlijke uitleg.
Alles werkt nu perfect
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #11 Gepost op: 27 januari 2005, 22:25:41 »
ik heb nog een foutje

Private Sub CommandButton1_Click()

For intTel = 8 To 17
Cells(intTel, 10) = 2 * Rnd + 0
Next intTel

End Sub

De randomg etallen die ik hierdoor verkrijg Moeten afgerond worden op 1 decimaal.  Anders kloppen formules in mijn werkblad Niet.

Kan je deze code nog even voor me aanpassen?

Bedankt

profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #12 Gepost op: 28 januari 2005, 08:10:40 »
Hallo,

Dat hoeft je niet persé in de code aan te passen.

Je kan dit gerust doen door in Excel de cellen te selecteren waar de getallen in zullen komen te staan, erop rechts te klikken en dan te kiezen voor CelEigenschappen.

Op het tabblad Getal kan je dan een type kiezen en afronden op het aantal decimalen die jij verkiest.

Groeten,
StriKe
0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

Offline edske

  • Lid
  • *
  • Berichten: 59
  • Oplossing.be
Re:genereren getallen
« Reactie #13 Gepost op: 28 januari 2005, 09:10:30 »
Dat had ik ook eerst gedaan.  Maar zo lukt het niet
Er zit nl een formule in het werkblad  die dan problemen geeft.
Het zal dus echt wel in de code moeten.

Is daar een oplossing voor ?

nb: Als ik afrond op decimalen met celeigenschappen en ik tik
in een volgende kolom hetzelfde getal in, dan zijn beide getallen eigenlijk niet identiek !
profile : 855GM Intel Corporation, Intel(R) 82852/82855 Graphics ControllerIntel(R) 82852/82855 Graphics Controller, Windows XP, Prof, SP1, Intel(R) Pentium(R) M processor 1400MHz, 495 MB RAM, HDD:39 GB, FAT32, skynet, Norton AntiVirus, Internet Explorer 6.06.0, Outlook Express

Offline StriKe

  • Ambassadeur
  • *****
  • Berichten: 4.647
  • Geslacht: Man
Re:genereren getallen
« Reactie #14 Gepost op: 28 januari 2005, 14:50:06 »
Tuurlijk kan dat ook via VB :)

Je moet dan gewoon de regel waarin die rnd wordt gebruikt bijvoorbeeld als volgt aanpassen:

round(Cells(intTel, 10) = 2 * Rnd + 0,2)

Die ",2" die je op 't einde ziet staan (vet afgebeeld) dient om te bepalen op hoeveel decimalen er moet worden afgerond, deze waarde kan je dan ook bijvoorbeeld gaan instellingen op 0 als je geen getallen na de komma wenst.

Groeten,
StriKe
0T5326 Dell Computer Corporation, GeForce FX Go5200, Windows XP, Prof, SP2, NL, Mobile Intel(R) Pentium(R) 4 CPU 3.06GHz, 512 MB RAM, HDD:97 GB, NTFS, AVG Anti-Virus, Kerio Personal Firewall, Firefox 2.0, The Bat!

 


www.combell.com