prendre aléatoirement des cellules

mgrizzly

XLDnaute Junior
Bonjour,
Dans la colonne C de mon tableau (de la ligne 9 à 59) il y a des 1 et des 0.
J'aurais besoin d'un code en VBA qui prenne aléatoirement 3 cellules de la colonne C et uniquement parmi celles qui ont des 1.
Merci de m'aider.
 

Pierrot93

XLDnaute Barbatruc
Re : prendre aléatoirement des cellules

Re

chez moi sur ton fichier, lorsque je lance ta macro "FIP_AIP_MUSC" et que la feuille active est bien la feuille "compétence", pas de souci me renvoie bien les neuf valeurs dans l'autre feuille... Comment la lances tu ? Peut être qu'une autre macro active l'autre feuile.... sinon vois pas trop ....
 

mgrizzly

XLDnaute Junior
Re : prendre aléatoirement des cellules

Sinon Pierrot voici le même fichier un peut plus fourni où je voudrais que lorqu'on rentre un chiffre<=100 dans le userform alors remplissange du calendrier avec 9 agents dans chaques cases.(comme précédemment),chiffre <200 et >100 remplissage avec 6 agents et >=200 remplissage avec 6 agents aussi.
Je te joinds mon fichier, pourrais-tu regarder pourquoi ça ne marche pas.
Je n'ai fais que roulement1 pour l'instant.
Merci.
 

Pièces jointes

  • classeur2.zip
    47.3 KB · Affichages: 38
  • classeur2.zip
    47.3 KB · Affichages: 39
  • classeur2.zip
    47.3 KB · Affichages: 38

mgrizzly

XLDnaute Junior
Re : prendre aléatoirement des cellules

Pour les 9 valeurs je crois que j'ai compris:
Ton code n'affiche que 9 valeurs en tout dans la feuille "mois en cours". Je voudrais par contre que le code affiche les 9 valeurs mais dans toutes les cellules non jaune de la ligne 4 à 34.
 

Pierrot93

XLDnaute Barbatruc
Re : prendre aléatoirement des cellules

Bonjour mgrizzly

Oui les neuf valeurs ne sont renvoyées qu'une seule fois, dans la feuille "mois en cours". Je constate qu'il y a seulement 18 cellules de disponibles (non jaunes et vides), est ce qu'il en sera toujours ainsi ? Si c'est le cas, la même valeur est elle placée dans les 2 premières cellules disponibles ? Plus de questions que de réponse....

@+
 

Pierrot93

XLDnaute Barbatruc
Re : prendre aléatoirement des cellules

Re

pour le code dans ton usf, essaye comme ceci :

Code:
Private Sub BoutonValide_Click()
Dim nbrestes As Integer
nbrestes = Restes.TextBox1.Value
If nbrestes >= 200 Then
    RemplirPlanning3
    ElseIf nbrestes < 200 And nbrestes > 100 Then RemplirPlanning2
    ElseIf nbrestes <= 100 Then RemplirPlanning1
End If
End Sub

@+
 

mgrizzly

XLDnaute Junior
Re : prendre aléatoirement des cellules

Non il n'y aura pas toujours 18 cellules blanches de disponibles car c'est un programme qui génère un emploi de temps. En cliquant sur le bouton mise à jour, on peut changer la date et passer au mois suivant, qui, lui n'aura pas de jours fériés par exemple mais 22 cellules de couleur blanche. Serait-il possible d'adapter le code pour qu'il affiche les 9 valeurs mais dans toutes les cellules non jaune de la ligne 4 à 34?
 

Pierrot93

XLDnaute Barbatruc
Re : prendre aléatoirement des cellules

Re

et selon quel(s) critère(s) doivent elles être réparties car si le nombre de cellules disponibles n'est pas divivisible par 9 ??? Je crais fort qu'il faille refaire tout le code.... d'ou l'importance de bien exposer le problème dès le départ et de fournir tous les éléments....
 

mgrizzly

XLDnaute Junior
Re : prendre aléatoirement des cellules

On doit prendre 3 cellules qui ont des 1 dans les lignes 9 à 24, 3 qui ont des 1 dans les lignes 25 à 41 et 3 qui ont des 1 dans les lignes 42 à 59, sauf les cellules qui sont en rouges (en rouge sont les agents en congés) dans la feuille "compétences". On doit pouvoir les prendre aléatoirement. Il faudrait ensuite afficher les 9 valeurs trouvées précédemment dans toutes les cellules non jaune de la ligne 4 à 34 dans la feuille "mois en cours". Est-ce plus clair ?
 

Discussions similaires

Statistiques des forums

Discussions
312 428
Messages
2 088 340
Membres
103 821
dernier inscrit
Lorient56