Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel


Réponse
 
LinkBack Outils de la discussion
Vieux 29/08/2007, 19h04   #1 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Valider cochage de plusieurs dizaines de checkbox

Bonsoir,

J'ai essayé de trouver mon bonheur sur le Forum Ecel avant d'écrire ce post, mais les problèmes exposés (et leurs solutions) sont nettement trop compliquées pour mon umble cas!

Je ne cherche pas à, en cochant une checkbox, recopier la données dans une feuille, ni filtrer des réponses... mais juste à savoir si la checkbox a bien été cochée!

Le cas concret : faire une feuille excel de réconcialiation bancaire (pointage des comptes) avec : un intitulé, un montant et une case à cocher. Si la case est cochée, en fermant Excel, une boite de dialogue remercie l'utilisateur. Si ce n'est pas le cas, elle lui signifie que des cases n'ont pas été cochées;

J'ai pensé à un code du genre :

If Caseàcocher1.Value = True Then
MsgBox "La vérification des comptes a été renseignées avec succés"
Etc...
End If

Mais je dois le faire pour des dizaines et des dizaines d'intitulés. Est ce qu'il y a un moyen de faire faire le "travail" à un seul code, sans avoir à en créer un pour chaque checkbox?

Je sais pas trop si cette demande est lumineuse..mais si vous avez des questions, n'hesitez pas (c'est moi qui demande de l'aide,normal que je donne les infos nécessaire, non?).

Merci de vos pistes, dans tous les cas.
bonne soirée
gacastex est déconnecté   Réponse avec citation
ANNONCES
Vieux 29/08/2007, 19h24   #2 (permalink)
XLDnaute Barbatruc
 
Avatar de bhbh
 
Date d'inscription: juin 2007
Version Excel : Excel 2003 (PC)
Messages: 2 897
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Bonjour, en supposant que TOUS tes CheckBox se suivent numériquement parlant (c'est à dire de 1 à 4 comme dans mon exemple), et pour peu qu'ils aient un Caption, tu peux mettre ceci :

Private Sub CommandButton1_Click()
For i = 1 To 4
If Controls("CheckBox" & i).Value = False Then
MsgBox "Au moins un contrôle non validé " & Controls("CheckBox" & i).Caption: Exit Sub
End If
Next i
MsgBox "merci"
Unload Me
End Sub
Fichiers attachés
Type de fichier : zip gacastex.zip (7,1 Ko, 14 affichages)
bhbh est connecté maintenant   Réponse avec citation
Vieux 29/08/2007, 19h49   #3 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Bonjour BhBh,

merci pour ta réactivité!
J'ai regardé ta proposition : c'est exactement ce qu'il me faut!

Seul souci : je voudrais le faire directement dans Excel, sans passer par un userform (ça m'oblige à passer par une combobox pour les intitulés, 1textbox pour le montant, etc. alors que c'est pas indispensable (bien que se soit plus fonctionnel, il est vrai)).

Est qu'en créant les CheckBox directement sous excel et en mettant un Command de sortie/validation, je peux réutiliser le code que tu m'as transmis?

merci encore pour ton aide, en tout cas!
bonne fin de soirée à toi
gacastex est déconnecté   Réponse avec citation
Vieux 29/08/2007, 20h07   #4 (permalink)
XLDnaute Accro
 
Avatar de Gorfael
 
Date d'inscription: avril 2006
Localisation: Basse Goulaine
Version Excel : Excel 2003 (PC)
Messages: 1 408
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Citation:
Envoyé par gacastex Voir le message
Bonsoir,

J'ai essayé de trouver mon bonheur sur le Forum Ecel avant d'écrire ce post, mais les problèmes exposés (et leurs solutions) sont nettement trop compliquées pour mon umble cas!

Je ne cherche pas à, en cochant une checkbox, recopier la données dans une feuille, ni filtrer des réponses... mais juste à savoir si la checkbox a bien été cochée!

Le cas concret : faire une feuille excel de réconcialiation bancaire (pointage des comptes) avec : un intitulé, un montant et une case à cocher. Si la case est cochée, en fermant Excel, une boite de dialogue remercie l'utilisateur. Si ce n'est pas le cas, elle lui signifie que des cases n'ont pas été cochées;

J'ai pensé à un code du genre :

If Caseàcocher1.Value = True Then
MsgBox "La vérification des comptes a été renseignées avec succés"
Etc...
End If

Mais je dois le faire pour des dizaines et des dizaines d'intitulés. Est ce qu'il y a un moyen de faire faire le "travail" à un seul code, sans avoir à en créer un pour chaque checkbox?

Je sais pas trop si cette demande est lumineuse..mais si vous avez des questions, n'hesitez pas (c'est moi qui demande de l'aide,normal que je donne les infos nécessaire, non?).

Merci de vos pistes, dans tous les cas.
bonne soirée
Salut
Après quelques élucubrations, une proposition
A+
Fichiers attachés
Type de fichier : xls Controles formulaires.xls (23,0 Ko, 33 affichages)
Gorfael est déconnecté   Réponse avec citation
Vieux 29/08/2007, 20h23   #5 (permalink)
XLDnaute Accro
 
Avatar de chris
 
Date d'inscription: février 2005
Localisation: yvelines
Version Excel : Excel XP (PC)
Messages: 1 860
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Bonjour

Un code de Gaetan Mourman qui permet de faire de fausses cases à cocher dans les cellules :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Teste si la cellule ayant recu un double-clic fait partie de la plage bd_present
'Cette plage a été définie de manière dynamique à l'aide de la fonction suivante :
' =DECALER(Feuil1!$B$2;;;NBVAL(Feuil1!$A:$A)-1)
'Voir le menu Insertion - Nom - Définir
If Not (Intersect(Target, Range("bd_present")) Is Nothing) Then
'Mise en forme de la cellule
Target.Font.Name = "Wingdings"
Target.HorizontalAlignment = xlCenter
'Empêche la sélection de la cellule après le double-clic
Cancel = True
'Teste de la valeur de la cellule et inverse la case à cocher
Target.Value = inverse(Target.Value)
End If
End Sub

Function inverse(cible As String)
'Nouvelle fonction qui met une croix pour une case vide
'et une case vide pour une croix
If cible = "o" Then
inverse = "ý"
ElseIf cible = "ý" Then
inverse = "o"
Else: inverse = ""
End If
End Function

Si tu valorises ainsi les cellules, un simple comptage du nombre de
ý dans la plage te permet de savoir si tu en as autant que de cellule.

Tu peux bien sûr utiliser d'autres caractères.
__________________
Chris
chris est déconnecté   Réponse avec citation
Vieux 29/08/2007, 20h41   #6 (permalink)
XLDnaute Barbatruc
 
Avatar de bhbh
 
Date d'inscription: juin 2007
Version Excel : Excel 2003 (PC)
Messages: 2 897
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Re-,
Bonsoir, Chris et Gorfael
un autre fichier, en fonction de la provenance de tes CheckBoxes, soit BO Contrôles, soit BO Formulaire, soit USF
Fichiers attachés
Type de fichier : zip gacastex.zip (17,9 Ko, 23 affichages)
bhbh est connecté maintenant   Réponse avec citation
Vieux 30/08/2007, 08h55   #7 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Bonjour Gorfael, Chris, BhBh, le forum,

merci pour vos propositions! je regarde ça de suite, mais je ne doute pas que je vais trouver mon bonheur là dedans!

A plus tard et encore merci!
gacastex est déconnecté   Réponse avec citation
Vieux 30/08/2007, 09h30   #8 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Re bonjour à tous!

Un grand merci à BhBh pour son aide, parce qu'il m'a proposé exactement ce que je cherchais à faire (et c'est pas la première fois, cf mes soucis passés avec des userform, des listbox, etc.). Donc, encore une fière chandelle que je te dois!


Merci aussi à Gorfael; je vais pas utiliser ce code dans l'application présente, mais pour une autre (gestion des stocks de sécurité) sous peu. Donc, tes "élucubrations" vont me servir!

Et merci a Chris pour le code communiqué; je ne l'ai pas encore testé, je vais le faire dans la journée.


merci pour votre aie!
A plus tard

GaCastex
gacastex est déconnecté   Réponse avec citation
Vieux 30/08/2007, 12h36   #9 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Re-bonjour à tous...je reviens à la charge!

Avec vos conseils respectifs (plus tout ce que j'ai pu trouver sur le forum), je suis arrivé à faire ce que je voulais.

mais problème : quand je ferme le document, un MsgBox m'informe que des données n'ont pas été cochées; or, ce message s'affiche autant de fois que j'ai de cases décochées! par exemple, si, sur 20 intitulés de dépenses, seulement 10 ont été pointés, j'ai droit à 10 MsgBox d'affilée avant de pouvoir fermer!

J'ai bidouillé les codes trouvés ou donnés, mais j'ai pas du bien adapter le truc..
je vou mets le dit-fichier en pièce jointe, si vous avez le temps d'y jeter un oeil.

Merci encore...on y arrive!
Bonne aprem'
Fichiers attachés
Type de fichier : zip 1.0.zip (17,8 Ko, 16 affichages)
gacastex est déconnecté   Réponse avec citation
Vieux 30/08/2007, 12h37   #10 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Pour afficher le MsgBox problématique, il faut valider les données à l'aide du Command "VALIDER" sur la droite du tableau.

merci!
gacastex est déconnecté   Réponse avec citation
Vieux 30/08/2007, 22h37   #11 (permalink)
XLDnaute Barbatruc
 
Avatar de bhbh
 
Date d'inscription: juin 2007
Version Excel : Excel 2003 (PC)
Messages: 2 897
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Bonsoir, et excuse du retard,
rajoute quelques lignes :

Sub BoutonVal_QuandClic()
With ActiveSheet
For Each cb In .OLEObjects
If cb.Name Like "CheckBox*" Then
If .OLEObjects(cb.Name).Object.Value = False Then
varReponse = MsgBox("Voulez-vous les pointer ULTERIEUREMENT?", vbYesNo, "DES DEPENSES/RECETTES N'ONT PAS ETE POINTEES!!!")
If varReponse = vbNo Then
MsgBox "Merci de cocher les dépenses/recettes pointées": Exit Sub
Else: ThisWorkbook.Save: ThisWorkbook.Close '<===ICI
End If
End If
End If
Next
ThisWorkbook.Close
End With
End Sub
bhbh est connecté maintenant   Réponse avec citation
Vieux 31/08/2007, 11h40   #12 (permalink)
XLDnaute Nouveau
 
Date d'inscription: août 2007
Messages: 20
Par défaut Re : Valider cochage de plusieurs dizaines de checkbox

Yeeeeees!

Merci BhBh! t'inquietes pas pour le délai, on est pas aux pièces...
Le code fonctionne nickel; j'en ai terminé avec ce taf. tu viens d'y mettre la touche finale!

Merci encore..
..et sans doute à bientôt pour de nouvelles questions (de ma part)

bonne journée!
gacastex est déconnecté   Réponse avec citation
ANNONCES
Réponse

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui

Discussions similaires
Discussion Auteur Forum Réponses Dernier message
Checkbox et cochage belette Forum Excel 17 06/06/2006 16h25
arrondi sup sur les unités et non les dizaines BAT Forum Excel 6 03/03/2006 15h01
Création de lien texte entre fichier par cochage. Nagrom Forum Excel 30 25/08/2005 15h34
plusieurs checkbox comment vérif que une seule est cochée ?? zorg Forum Excel Downloads - Archives 4 22/10/2004 10h02
plusieurs questions avant de valider la reponse rem$ Forum Excel Downloads - Archives 3 22/09/2004 17h50


Fuseau horaire GMT +2. Il est actuellement 19h23.


(C) 2006 Excel Downloads