VBA Excel selection d'une cellule au hasard

Résolu/Fermé
Alex0 Messages postés 1 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 19 février 2007 - 19 févr. 2007 à 15:59
 S.Court - 4 mars 2014 à 20:44
Bonjour,

j'ai la sélection suivante :

Sheets("Display Grid").Select
Range("AO10:AO105").Select

à l'intérieur de laquelle je souhaite sélectionner une cellule au hasard à chaque exécution.

Merci pour votre aide.
Alex

1 réponse

Kobaya Messages postés 282 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 10 janvier 2008 214
20 févr. 2007 à 16:21
salut alex,

ça devrait te convenir :
Sub CelluleAuHasard()
    Dim lngMinL     As Long
    Dim lngMaxL     As Long
    Dim lngMinC     As Long
    Dim lngMaxC     As Long
    Dim lngAleaC    As Long
    Dim lngAleaL    As Long
    
    Sheets("Display Grid").Select
    Range("AO10:AP105").Select
    
    ' numéro de la première colonne
    lngMinC = Selection.Columns(1).Column
    ' numéro de la dernière colonne
    lngMaxC = Selection.Columns.Count + lngMinC - 1
    ' numéro de la première ligne
    lngMinL = Selection.Rows(1).Row
    ' numéro de la dernière ligne
    lngMaxL = Selection.Rows.Count + lngMinL - 1
    
    ' tirage aléatoire pour la ligne
    lngAleaL = (lngMaxL - lngMinL) * Rnd() + lngMinL
    ' tirage aléatoire pour la colonne
    lngAleaC = (lngMaxC - lngMinC) * Rnd() + lngMinC
    Debug.Print "lngMinC = " & lngMinC, "lngMaxC = " & lngMaxC, "lngMinL = " & lngMinL, "lngMaxL = " & lngMaxL, "lngAleaL = " & lngAleaL, "lngAleaC = " & lngAleaC
    
    Cells(lngAleaL, lngAleaC).Activate
End Sub
1
un seul mot "génial"

merci beaucoup
Alex
0
Excusez moi de relancer un sujet aussi vieux, mais j'ai absolument besoin d'un renseignement dans le cadre de ma licence !
La formule est géniale mais est il possible d'afficher le résultat de cette fonction dans une cellule plutôt que dans la barre de formule ?

Merci d'avance
0