Sélection de colonnes aléatiore en les cochants

Résolu
yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006 - 28 mars 2006 à 11:45
yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006 - 30 mars 2006 à 17:30
Bonjour,
Je recherche le moyen de sélectionner un groupe colonnes aléatoire en les cochant ,pour lancer des procédures dessus, elles ne sont pas constante en nombre, et on la première cellule de colonne qui change, seule la colonne A ne peux pas faire parti de la sélection.

8 réponses

yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006
30 mars 2006 à 17:30
resalut, je te remercie de ton aide, mais j'ai trouver mon bonheur en foullant un peu , mais j'ai un autre problème maintenant, comment fait on pour avoir une nombre de checkbox superieur à 5 et ne les afficher qu'à partir de la colonne B.
mon codes:
With Assistant.NewBalloon
.Heading = "Variables affichables"
.Text = "Sélectionner vos courbes"
'Totalcol = Range("B1", [B1].End(xlToRight)).Columns.Count
'For i = 2 To Totalcol + 1
i = ActiveSheet.UsedRange.Columns.Count
For i = i To 2 Step -1
nomcell = Cells(1, i)
.CheckBoxes(i).Text = nomcell
If i = 2 Then Exit For
Next
.Button = msoButtonSetOkCancel

If .Show = msoBalloonButtonOK Then
Valid = 0
For i = 2 To Totalcol + 1
If .CheckBoxes(i).Checked = True Then
Valid = Valid + 1 'rend valide différent de 0
End If
Next
If Valid = 0 Then MsgBox "Aucune sélection n'a été effectué"
End If
End With
3
jannoman Messages postés 256 Date d'inscription jeudi 17 avril 2003 Statut Membre Dernière intervention 20 février 2008 1
28 mars 2006 à 14:00
dim n as integer, k as integer, a as integer, b as integer
dim t() as boolean

randomize timer

n = nb_de_colonnes
redim t(1 to n)
for k = 1 to n
t(k)=false
next k

a = int(n * rnd)
for k = 1 to a
do
b = 2 + int(n - 1) * rnd 'pour ne pas choisir la colonne A
loop until not t(b)

t(b) = true
next k

'et la tu as maintenant t() qui contient true si la colonne est choisie, false sinon.

A+.
Thomas.
0
yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006
28 mars 2006 à 14:42
j'ai pas trop bien compris ton code, je ne sais pas si je me suis bien exprimer en disant aléatoire,
Si tu veux les colonnes qui seront prise ne seront pas toujour les mêmes, j'aimerai enfet les sélectionner par l'intermédiaire d'une liste sur laquel on coche, genre un checkbox , mais je sais pas si cette dernière est possible dans une boucle
du genre :
Sub essss()
With Assistant
Assistant.Sounds = True
Assistant.Animation = msoAnimationGreeting
Assistant.On = True
End With
Dim Bln1 As Balloon
nbrcol = ActiveSheet.UsedRange.Columns.Count
Set Bln1 = Assistant.NewBalloon
With Bln1
.Animation = msoAnimationPrinting
.BalloonType = msoBalloonTypeBullets
.Button = msoButtonSetOkCancel
.Heading = "Statistiques"
.Icon = msoIconAlertCritical
For nbrcol = nbrcol To 2 Step -1
nomcell = Cells(1, nbrcol)
.CheckBoxes().Text = nomcell
Next nbrcol
.Mode = msoModeModal
.Show
End With
End Sub
0
jannoman Messages postés 256 Date d'inscription jeudi 17 avril 2003 Statut Membre Dernière intervention 20 février 2008 1
28 mars 2006 à 16:57
dis mieux ce que tu veux avec tes colonnes stp
est ce qu'on sélectionne certaines colonnes et apres l'ordinateur choisit, parmi ces colonnes, certaines colonnes ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006
29 mars 2006 à 11:19
Nous avons un fichier comptenant des colonnes, nombre: 1 et beaucoup, mais seule la colonne A ne fait pas parti de la sélection.
La sélection doit être manuel, les colonnes sont toutes répertoriées dans une box, on les coche puis on lance la procédure sur les colonnes sélectionnées
0
jannoman Messages postés 256 Date d'inscription jeudi 17 avril 2003 Statut Membre Dernière intervention 20 février 2008 1
29 mars 2006 à 14:25
alors où intervient l'aléatoire ?
qu'est ce que tu cherches à faire exactement ?
explique toi plus clairement stp ("nombre: 1 et beaucoup") ...
Merci.
A+.
Thomas.
0
yod6666 Messages postés 37 Date d'inscription vendredi 17 mars 2006 Statut Membre Dernière intervention 5 avril 2006
29 mars 2006 à 15:26
j'ai une base de données avec une colonne A qui sert de temps et les autres qui serve de donnée série pour un graphique.
j'aimerai pouvoir appliqué un sous programme, quand certaine d'entre elle sont sélectionner.
j'aurai pu faire un checkbox pour chaque données série mais le nombre de colonnes varie d'un fichier à un autre ainsi que leur noms(1er cellule de chaque colonnes).
j'ai l'impression que j'y arriverai jamais....

A L'AIDEEEEE!!!!!!
0
jannoman Messages postés 256 Date d'inscription jeudi 17 avril 2003 Statut Membre Dernière intervention 20 février 2008 1
29 mars 2006 à 17:19
ca y est je crois que j'ai compris.
voila comment faire :
1ere solution :
une listbox avec la propriété Multiselect à Extended.

dans le code :
for k = 1 to n
list1.additem "colonne : " & cstr(k)
next k

l'utilisateur sélectionne alors toutes les colonnes qu'il veut dans la liste

tu récupères dans ton programme si une colonne est sélectionnée, ou non, de cette manière :

for k = 1 to n
if list1.selected(k - 1) then msgbox "la colonne numéro " & cstr(k) & " est sélectionnée"
next k

autre facon :
tu mets le Style de ta listbox à Checkbox et tu ajoute tes colonnes et récupère leur sélection de la meme maniere

j'espere avoir répondu a ta question cette fois !

A+.
Thomas.
0
Rejoignez-nous