Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Checkbox [ Langages dérivés / VBA ] (Lameche15)

mardi 9 septembre 2008 à 15:01:05 | Checkbox

Lameche15

Bonjour à tous,

J'essaie de mettre au point une application permettant la saisie d'activité d'une entreprise.
J'ai donc une feuille de calcul sous excel pour chaque mois de l'année en cours
Un bouton me permet de lancer le code après avoir selectionner la plage de cellule à saisir.
Ce bouton m'envoie sur une Userform ou figurent plusieurs CheckBox (12) qui correspondent à des noms d'engins.
J'aimerais pouvoir en fonction des CheckBox cochées, inscrire le(s) Caption(s) correspondant(s) dans les cellules selectionnées.
Si qqn à une idée de code à me fournir je lui en serait très reconnaissant.

Merci d'avance pour vos réponses

mardi 9 septembre 2008 à 15:29:42 | Re : Checkbox

pile_poil

Membre Club
Réponse acceptée !
bonjour
le principe de base est simple
if OptionButton1.value= true then  cells(x,y).text = OptionButton1.caption
elseif OptionButton2.value= true then  cells(x,y).text = OptionButton2.caption
etc ...
end if

maintenant pour éviter d'avoir autant de ligne que de optionbutton
tu peux passer par la collection controle

For i = 1 To nombre d'optionbutton
    if Me.Controls("optionbutton" & i).value= true then
         cells(x,y).text = Me.Controls("optionbutton" & i).caption
         exit for 'pour sortir de la boucle dès que le bon option button a été trouvé
   end if
Next i
si c'est la solution, penser : REPONSE ACCEPTEE

mardi 9 septembre 2008 à 15:47:15 | Re : Checkbox

Lameche15

Wouah super! Déjà une réponse!
Merci de ta réactivité
Il me semble que tu aies bien compris ma demande.
Une seule chose j'utilise des CheckBox et non des OptionButton mais je suppose que cela ne change pas grand chose.
Autre chose crois tu qu'avec ce code si l'utilisateur coche plusieurs cases, je vais pouvoir récupérer tous les captions et les mettre dans la cellule voulue?
Merci d'avance

mardi 9 septembre 2008 à 18:19:59 | Re : Checkbox

pile_poil

Membre Club
Réponse acceptée !
avec des checkbox et donc des réponses multiples possibles  il va te falloir utiliser plutot la premiere solution
par exemple:
if checkbox1.value= true then  cells(x,y).text = checkbox1.caption
elseif checkbox2.value= true then  cells(x,y+1).text = checkbox2.caption
elseif checkbox3.value= true then  cells(x,y+2).text = checkbox3.caption
etc ...
end if
mais tout dépend de ce que tu veux exactement obtenir

tu peux aussi utiliser un combobox qui contiendrait tous les choix  et dans ce cas  il te suffirait de mettre

 Private Sub UserForm_Activate()
'a l'ouverture de la userform remplissage du combobox avec tous les choix possibles
     ComboBox1.AddItem "objet1"
     ComboBox1.AddItem "objet2"
    'etc...
End Sub

Private Sub ComboBox1_click()
     Feuil1.cells(x,y) = ComboBox1.Text
     UserForm1.Hide
End Sub

ce ne sont pas les solutions qui manquent
si c'est la solution, penser : REPONSE ACCEPTEE

mercredi 10 septembre 2008 à 09:25:38 | Re : Checkbox

Lameche15

Merci encore pour ton aide précieuse.
Subsiste encore un soucis, j'ai une erreur sur la ligne Me.controls...
Objet non spécifié
Dois-je déclarer qqch dans les variables en debut de code?

mercredi 10 septembre 2008 à 10:07:51 | Re : Checkbox

pile_poil

Membre Club
Réponse acceptée !
oui dans l'évenement click de ton bouton il faut mettre
dim controls as control
de plus j'ai vu une erreur dans ce que je t'ai donné
il faut mettre cells(x,y) =
au lieu de cells(x,y).text =

si c'est la solution, penser : REPONSE ACCEPTEE

mercredi 10 septembre 2008 à 10:16:09 | Re : Checkbox

Lameche15

Ouais ca c pas un probleme car de toute façon je fais avec la cellule active.
Sinon j'ai un autre souci je voudrais modifier mon userform pour remettre des optionbutton a la place des checkbox et chaque fois que je relance mon programme c l'ancienne userform qui apparait.
Aurais-tu une solution avant que je ne recommence tout à zéro.

mercredi 10 septembre 2008 à 10:22:07 | Re : Checkbox

pile_poil

Membre Club
tu as créé une nouvelle userform  ou dans la premiere tu as remplacé les checkbox par des optionbuton?
dans le premier cas il faut dans l'évenement click de ton bouton qui ouvre la userform lui mettre le bon nom
 si c'est la deuxieme là je ne pige pas comment il peut t'afficher un truc qui n'existe plus !

si c'est la solution, penser : REPONSE ACCEPTEE

mercredi 10 septembre 2008 à 10:46:14 | Re : Checkbox

Lameche15

C'est bien le second cas et du coup j'ai esayé d'exporter la userform et d'importer à chaque fois que je fais un changement, c lourd mais ca marche
Merci pour tout
A très vite pour mes prochaines difficultés

mercredi 10 septembre 2008 à 11:27:36 | Re : Checkbox

Lameche15

Bon tu vois je n'aurais pas tardé à rencontrer de nouvelles difficultés. Au passage je te fais remarquer que je me suis mis à la programmation Excel sur ce projet et que la premiere partie de mon programme concernant la gestion des absences n'est pas du tout optimisé mais il marche bien et je gagne un temps énorme grace à tes conseils et à ceux que j'ai pu lire sur les différents forums.
Voila, quand l'utilisateur va selectionner une plage de cellule il va ensuite cliquer sur un bouton Activité placé dans la feuille et ainsi charger la userform. La il choisit le type d'activité une couleur qu'il souhaite associer à cette activité ainsi qu'un véhicule, le tout avec des optionbutton. (Le code ci-dessous)
J'arrive donc à mettre les cellules selectionnées avec la couleur et le nom de l'engin. J'arrive également à inscrire dans une cellule déterminée dans le code (fixe) le nom de l'activité choisie et la couleur pour créer une légende.
Seulement cela sera valable pour une activité et le problème que je rencontre est que si l'utilisateur resaisi pour un autre employé une autre activité et un autre engin j'aurai bien les bonnes données dans les cellules selectionnées mais ma légende sera écrasée.
Voici mon code, peux tu éventuellement me proposer une solution? Sinon moi je pensais carrément à créer un autre bouton sur la feuille pour créer la légende à part avec le meme système, selectionner les cellules avant de lancer la procédure:

Merci


Private Sub CommandButtonOK_Click()
Dim Cellule As Range
Dim i As Integer
Dim Couleur As Long
Dim Cpt As Integer
Dim cells As Range


'Choix de la couleur ( je sais que j'aurais pu encore optmiser avec une autre boucle for imbriquée! la flemme lol)
If OptionRouge = True Then
Couleur = vbRed
End If
If OptionBleu = True Then
Couleur = vbBlue
End If
If OptionVert = True Then
Couleur = vbGreen
End If
If OptionCyan = True Then
Couleur = vbCyan
End If
If OptionJaune = True Then
Couleur = vbYellow
End If
If OptionMagenta = True Then
Couleur = vbMagenta
End If

 


For Each Cellule In Selection
Cellule.Interior.Color = Couleur

For i = 1 To 21 'Récupération de l'activité
    If Me.Controls("OptionButton" & i).Value = True Then
    Range("D28") = Me.Controls("OptionButton" & i).Caption
    Range("D28").Interior.Color = Couleur
        For Cpt = 28 To 39
            If Me.Controls("OptionButton" & Cpt).Value = True Then
                Cellule = Me.Controls("OptionButton" & Cpt).Caption
                Exit For 'pour sortir de la boucle dès que le bon option button a été trouvé
            End If

        Next Cpt
    End If
Next i
Next Cellule

Activites.Hide
End Sub



1 2 3

Cette discussion est classé dans : bouton, code, checkbox


Répondre à ce message

Sujets en rapport avec ce message

Checkbox+bouton de commande [ par iclic ] Donc voila j'ai un probleme tout con mais jarrive pas à le résoudre!J'ai une checkbox et un command button je veut que si le mec a cocher la checkbox Commondialog et le bouton annulé [ par kazimir ] Bonjour,voila, j'ai un gros souci:j'ai suivi la méthode pour gerrer l'erreur 32755, mais ca ne marche pas.j'ai bien fixé la proprieté cancelerror à "t Bouton de commande [ par Nicolas75 ] BonjourJe voudrais insérer une image dans mon bouton de commande mais en passsant par du code de façon à l'enlever ou l'insérer à mon gré.Exemple: sur Re : bouton fermer [ par pcpunch ] c'est le seul bouton que tu ne peu pas supprimer!!!2 Possibilitées s'offre a toi :- Soit tu met la propriété BoderStyle de la forme a 0-None et tu cré Re : bouton fermer [ par pcpunch ] c'est le seul bouton que tu ne peu pas supprimer!!!2 Possibilitées s'offre a toi :- Soit tu met la propriété BoderStyle de la forme a 0-None et tu cré Code pour bouton enter [ par Barfed_Man ] salut tou le monde . Bon moi et mon ami ons e créer un browser internet. Seul pepin pour l'instant c que l'on aimerais savoir le code pour que quand l impression d'un listview [ par hysteria74000 ] Bonjour a tous,voilà mon problème, sous access 2000, j'ai un listview et un bouton imprimer dont le code a été trouvé sous vbfrance.Super code mais i *TRES URGENT MERCI* [ par yoarf ] Bonjour,Je vous explique. Je possède un document Excel 97 avec plein de code VBA (boutons, combobox, checkbox). A l'intérieur du document il y a un bo Faire une impression écran [ par Ricou13 ] J'essaie d'obtenir une impression d'écran de mon formulaire en appuyant simplement sur un bouton. Voici le code de mon bouton : Private Sub BtImprimer ToolBar avec ButtonMenu (CheckBox) [ par jockos ] Je voudrais utiliser un ToolBAr qui me permette d'implémenter des ButtonMenu CheckBox avec un Bouton style tbrDropdown.Et je ne pense pas que le contr


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,437 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.