Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Urgent creer cases a cocher dynamique dans userform

pasquetp

XLDnaute Occasionnel
Bonjour,

je souhaite creer des cases a cocher dans un userform. mais ces cass doivent etre dynamiques et varier par rapport a une plage de cellules. les cellules varieront parfois et je veux que les cases representent les noms des cellules ds la plage. ensuite que si je les coche tel ou tel ou toutes (objectif est de imprimer les feuilles qui portent le nom de ces cellules) que lorsque je clique sur un bouton imprimer, ca imprime les feuilles que jaurai choisi . voila

est ce clair?

Des propositions???

merci d'avance
 

Paritec

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

bonjour paquetp le forum,
j'aime beaucoup les je veux !!!!
quand c'est gratuit on dit je souhaiterais.
Alors ton fichier il est ou? la plage de cellule elle est ou?
donc tu veux , tu veux, mais tu ne donnes rien pour que l'on puisse faire !!!
a+
Papou
 

JNP

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

Bonsoir Pasquetp, Pascal ,
Tu n'as pas vu, Pascal, en plus c'est urgent ...
Bon, tu as l'air bien parti pour faire une usine à gaz ...
Un exemple simple à base de ListBox à choix multiple et bouton d'option .
Bon courage
 

Pièces jointes

  • Pasquetp.xls
    46.5 KB · Affichages: 452

Paritec

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

Bonsoir Jean Noël le forum
Oui j'avais pas vu en plus c'est urgent !!!!!!
Voilà une solution "qu'elle" est très bonne Jean Noël mais son histoire de plage là
j'ai le sentiment que cela ne va pas être aussi simple, enfin s'il répond!!!! car c'est Urgent !!!
bref a +
Papou
 
Dernière édition:

pasquetp

XLDnaute Occasionnel
Re : Urgent creer cases a cocher dynamique dans userform

dsl pour les je.

je mettais simplement au clair ce que je "souhaiterais". en gros, il faudrait que les cases a cocher se mettent a jour ttes seules. si j'ai par exemple il y a que 10 clients, alors il y aura que ces 10 clients et leur fiches (non inclu dans le fichier) devront etre imprimer des que je clique sur imprimer. merci davance
 

Pièces jointes

  • test.xls
    53.5 KB · Affichages: 199
  • test.xls
    53.5 KB · Affichages: 216
  • test.xls
    53.5 KB · Affichages: 230

Paritec

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

Re tous,
je m'en doutais !!!
Bon alors si tu as 10 clients, tu veux imprimer quoi? tes 10 clients ils seront ou? dans la liste comme maintenant?
pourquoi des optionbutton plutôt que la listbox comme JNP t'a proposé?
Et comment on saura que tu n'as que 10 clients? bref des explications STP
a te relire
a+
Papou
 

JNP

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

Re ,
Je persiste et je signe !
Modifie mon USF ainsi
Code:
Private Sub UserForm_Initialize()
Dim Cellule As Range
For Each Cellule In Sheets("Feuil1").Range("B2:B25")
ListBox1.AddItem Cellule
Next Cellule
End Sub
ça sera moins beau, mais oh combien efficace ...
Evidemment, il ne faudra pas oublier d'indiquer ton classeur
Code:
If .Selected(I) Then Workbooks("Clients").Sheets(.List(I)).PrintOut
Bon courage
 

pasquetp

XLDnaute Occasionnel
Re : Urgent creer cases a cocher dynamique dans userform

merci pour les messages. d'habitude, j'ai pas autant de reponses. donc un gd merci a tous. j'ai vu le fichier que tu propose. il marche bien et c'est simple d'utilisation. mais mon patron tiens a cette methode. ainsi il a une vue d'ensemble. paritec je ten dis plus. il faut que en fonction des cases que tu coches par exemple leroy: resultat la feuille qui a ce nom (car chaque cellule dans la plage a sa propre feuille) sera imprimé. imprimer n'est pas un pb ni selectionner

Mon pb c'est LA CREATION DYNAMIQUE OU SUPPRESSION DE CLIENT DANS LE USERFORM. si "jour j" j'ai 10 clients donc 10 feuilles alors j'aurai 10 boutons. jour j+1 jaurai par exemple 30 CLIENTS. donc j'aurais 30 BOUTONS et jour j+2 jai par exemple 5 clients: resultat jai alors que 5 boutons. je suis d'accord avec jnp ton systeme est au point et fonctionnerait dans mon cas mais une listebox n'est pas recherché. je suis dsl que je sois si compliqué mais j'ai des imperatifs a respecter.

j'espere vous en avoir dit suffisament pour bien cerner le probleme
 

pasquetp

XLDnaute Occasionnel
Re : Urgent creer cases a cocher dynamique dans userform

voila les feuilles correspondant au cellules
 

Pièces jointes

  • test.xls
    52 KB · Affichages: 224
  • test.xls
    52 KB · Affichages: 225
  • test.xls
    52 KB · Affichages: 261

Jam

XLDnaute Accro
Re : Urgent creer cases a cocher dynamique dans userform

Salut pasquetp, JNP, Paritec,

Je t'invite à récupérer, à lire (c'est en anglais) et à récupérer le fichier de M. Walkenbach à cette adresse Spreadsheet Page Excel Tips: Creating A Userform Programmatically

En gros, cela permet de créer à la volée un userform avec les différents éléments (des cases options dans l'exemple), et de renvoyer un résultat. Le code est un peu technique (normal, c'est M. Spreadsheet) mais tu devrais pouvoir t'en sortir. La "démo 2" me semble la plus adaptée à ton cas, et au lieu de lire une plage il suffira de lire les onglets. Enfin il faudra juste implémenter l'impression, mais là ce sera assez simple.
Pour info, je pense qu'il faut stocker le nom de l'onglet à imprimer dans le .tag de l'objet. Il suffira de le récupérer pour lancer l'impression.
 

JNP

XLDnaute Barbatruc
Re : Urgent creer cases a cocher dynamique dans userform

Re , Oui, mais un jour, tu auras 40 ou 50 clients et rien n'ira plus...
De plus, j'ai bien peur que ton projet "sous pression" va te faire faire la plus grosse bétise que l'on puisse faire en entreprise : mettre en place un projet qu'on ne maitrise pas, et qui au moindre bug te laissera très désarmé...
Il vaut mieux faire comprendre (pas toujours facile, je sais ) à tes supérieurs qu'il vaut mieux un produit simple et fiable, qu'un produit complexe et instable
Bon courage quand même
 

Theze

XLDnaute Occasionnel
Re : Urgent creer cases a cocher dynamique dans userform

Bonsoir,

Je n'ai pas pris la peine de lire tous les post de ce fil donc voilà une proc qui permet la création dynamique de case à cocher en fonction du nombre de feuilles dans le classeur. Adapteur le nom du bouton pour lancer l'impression dans la Form (ici, CmdImprimer). Tout le code est à mettre dans le module de la Form. Teste sur une nouvelle Form sur laquelle tu aura au préalable posé un bouton nommé "CmdImprimer", tu pourra ensuite virer cette Form et adapter le code à tes besoins :
Code:
Private Sub UserForm_Initialize()

    Dim CaseACocher As MSForms.CheckBox
    Dim Feuille As Worksheet
    Dim Haut As Integer
    Dim Gauche As Integer
    Dim Ligne As Integer
    Const Largeur As Integer = 70
    Const Hauteur As Integer = 15
    Const Espace As Integer = 6
    With Me
        .Width = 386
        .Height = 180
        With .CmdImprimer 'CommandButton1 à adapter
            .Width = 60
            .Height = 25
            .Top = 130
            .Left = 316
        End With
    End With
    
    Haut = 6
    Gauche = 6
    
    For Each Feuille In Worksheets
    
        Set CaseACocher = Controls.Add("Forms.CheckBox.1", "Chk" & Feuille.Name)
        
        With CaseACocher
            .Left = Gauche
            .Top = Haut
            .Width = Largeur
            .Height = Hauteur
            .Caption = Feuille.Name
        End With
        
        If Gauche = 310 Then
            Gauche = 6
            Haut = Haut + Hauteur + Espace
        Else
            Gauche = Gauche + Largeur + Espace
            Haut = Haut
        End If
    
    Next Feuille
    
    Set CaseACocher = Nothing

End Sub


Private Sub CmdImprimer_Click() 'adapter le nom du bouton

    Dim Ctrl As Control
    Dim I As Integer
    
    For Each Ctrl In Me.Controls
        If TypeName(Ctrl) = "CheckBox" Then
            If Ctrl.Value = True Then
                Worksheets(Ctrl.Caption).Select (0)
                I = I + 1
            End If
        End If
    Next
    
    If I > 0 Then
        Me.Hide
        'ThisWorkbook.PrintPreview '<< pour aperçu avant impression
        ThisWorkbook.PrintOut '<< pour imprimer
        Unload Me
    Else
        MsgBox "Il faut faire une sélection !", vbOKOnly, "Imprimer."
    End If

End Sub

Hervé.
 

pasquetp

XLDnaute Occasionnel
Re : Urgent creer cases a cocher dynamique dans userform

bonjour a tous

merci a tous de votre aide sur ce pb. j'ai finalement suivi la solution proposé par jnp. sa solution est tres efficace et s'adapte tres bien a chaque cas. merci a tous encore une fois.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…