Résolu: Vba Excel : Nombre aléatoire
hooli
-
Mike-31 Messages postés 19571 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 19571 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Après pas mal de recherches, je ne trouve pas la réponse à ma question.
Comment faire pour générer un nombre aléatoire dans VBA excel?
J'ai vu des milliers d'exemple avec Randomize, RDN.. Mais ça ne correspond pas.
Je dois généré un nombre entre 1 et 999 dans la case active.
Merci de votre aide!
Après pas mal de recherches, je ne trouve pas la réponse à ma question.
Comment faire pour générer un nombre aléatoire dans VBA excel?
J'ai vu des milliers d'exemple avec Randomize, RDN.. Mais ça ne correspond pas.
Je dois généré un nombre entre 1 et 999 dans la case active.
Merci de votre aide!
A voir également:
- Résolu: Vba Excel : Nombre aléatoire
- Problème curseur souris incontrolable résolu ✓ - Forum Windows 10
- Panne chromecast résolu - Guide
- Site wix référencement google résolu ✓ - Forum Référencement
- Meurtre resolu street view - Accueil - Transports & Cartes
- Epson cartouche non reconnue résolu ✓ - Forum Imprimante
5 réponses
Salut,
Si tu tiens vraiment au VBA colle ce code dans un module et associe le à un bouton ou dans les propriétés d'un commandButton
Sub test()
Dim MyValue
Randomize ' Initialise le générateur de nombres aléatoires.
' Renvoie une valeur aléatoire comprise entre 1 et 6.
[B2] = Int((999 * Rnd) + 1)
End Sub
Si tu tiens vraiment au VBA colle ce code dans un module et associe le à un bouton ou dans les propriétés d'un commandButton
Sub test()
Dim MyValue
Randomize ' Initialise le générateur de nombres aléatoires.
' Renvoie une valeur aléatoire comprise entre 1 et 6.
[B2] = Int((999 * Rnd) + 1)
End Sub
Re,
Sur le forum, on aide pas aux cours, les aides sont ponctuelles.
Enfin, écris ton code simplement
Sub ttt()
Randomize
RandomNumber = Int((999 * Rnd) + 1)
ActiveCell = RandomNumber
End Sub
ou encore plus simple tu remplace ActiveCell par Range("A1")= si A1 doit être renseigné ou encore plus simple [A1]=
Sub test()
Randomize
ActiveCell = Int((999 * Rnd) + 1)
End Sub
pourquoi as tu mis
ActiveCell.Range("A1").Value = RandomNumber
ou c'est la cellule active qui est concerné
ou la cellule A1
ici 999 - 1 + 1 si tu fais -1+1 ton code s'annule ou c'est plus 1 ou moins1
ici Rdn c'est Rnd
Sur le forum, on aide pas aux cours, les aides sont ponctuelles.
Enfin, écris ton code simplement
Sub ttt()
Randomize
RandomNumber = Int((999 * Rnd) + 1)
ActiveCell = RandomNumber
End Sub
ou encore plus simple tu remplace ActiveCell par Range("A1")= si A1 doit être renseigné ou encore plus simple [A1]=
Sub test()
Randomize
ActiveCell = Int((999 * Rnd) + 1)
End Sub
pourquoi as tu mis
ActiveCell.Range("A1").Value = RandomNumber
ou c'est la cellule active qui est concerné
ou la cellule A1
ici 999 - 1 + 1 si tu fais -1+1 ton code s'annule ou c'est plus 1 ou moins1
ici Rdn c'est Rnd
Bonjour,
il n'y a pas forcément besoin de VBA pour générer un nombre aléatoire entre 1 et 999, il suffit d'écrire dans la case =ALEA.ENTRE.BORNES(1;999).
Par contre, à chaque fois que vous modifierez une case, le chiffre sera également modifié.
Cordialement.
il n'y a pas forcément besoin de VBA pour générer un nombre aléatoire entre 1 et 999, il suffit d'écrire dans la case =ALEA.ENTRE.BORNES(1;999).
Par contre, à chaque fois que vous modifierez une case, le chiffre sera également modifié.
Cordialement.
Merci de vos réponse.
Oui je tiens au VBA car j'ai des cours là-dessus.
J'ai un peu avancé depuis la mise de mon poste et j'en suis ici:
Randomize
RandomNumber = Int((999 - 1 + 1) * Rdn + 1)
ActiveCell.Range("A1").Value = RandomNumber
Il marche, mais il me met "1" tout le temps, il va pas chercher un autre nombre.
Avez vous une solution?
Merci d'avance
p.s. Merci Mike-31, je vais tester ce que tu m'a dit.
Oui je tiens au VBA car j'ai des cours là-dessus.
J'ai un peu avancé depuis la mise de mon poste et j'en suis ici:
Randomize
RandomNumber = Int((999 - 1 + 1) * Rdn + 1)
ActiveCell.Range("A1").Value = RandomNumber
Il marche, mais il me met "1" tout le temps, il va pas chercher un autre nombre.
Avez vous une solution?
Merci d'avance
p.s. Merci Mike-31, je vais tester ce que tu m'a dit.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question