Rechercher : dans
Par :

VBA Excel selection d'une cellule au hasard

Dernière réponse le 20 fév 2007 à 16:59:55 Alex0, le 19 fév 2007 à 15:59:42 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP
Internet Explorer 6.0

Meilleures réponses pour « VBA Excel selection d'une cellule au hasard » dans :
Tableur - La sélection des cellules VoirSélection de cellules Le tableur est un formidable outil pour manipuler des données. Ainsi, pour pouvoir manipuler les données il est nécessaire de disposer d'outils permettant de sélectionner rapidement toutes les cellules dont on a...
Sélection de cellules VoirSélection de cellules Un tableur est un formidable outil de manipulation de données. Qu’il s’agisse toutefois de référencer des cellules isolées ou des plages de cellules, que ce soit pour les besoins d’une formule, pour leur attribuer un format de...

1

Kobaya, le 20 fév 2007 à 16:21:46

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
A+,
Kobaya.

Répondre à Kobaya

2

 Alex, le 20 fév 2007 à 16:59:55

Un seul mot "génial"

merci beaucoup
Alex

Répondre à Alex