Case à cocher userform vrai en oui sur feuille

Bonjour à toutes et à tous

Novice dans les/ macros, Je fais actuellement une fiche de renseignements habillement du personnel. Dans un formulaire, j'ai des case à cocher. Lorsque celle-ci est activée, cela m'affiche "vrai" sur un tableau dans une feuille.

J'ai cherché mais je n'arrive pas à transformer ce "vrai" en "oui" et cela pour chaque ligne créée dans l'avenir.

Je vous remercie pour l'aide que vous pourriez m'apporter.

8dotations.xlsm (34.21 Ko)

Bonjour Jym, bonjour le forum,

Essaie comme ça :

Private Sub bntvalider_Click()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim TS As ListObject 'déclare la variable TS (Tableau Structuré)
Dim R As Range 'déclare la variable R (Recherche)
Dim LI As Integer 'déclare la variable LI (LIgne)

Set O = Worksheets("Dotation") 'définit l'onglet O
Set TS = O.ListObjects("Tableau3") 'définit le tableau structuré TS
Set R = TS.ListColumns(1).Range.Find("") 'définit la recherche R (recherche du vide dans la colonne 1 de TS)
If R Is Nothing Or TS.ListRows.Count = 0 Then 'condition : si aucune occurrence n'est trouvée ou si TS ne contient pas encore de ligne
    TS.ListRows.Add 'ajoute une ligne à TS
    LI = TS.ListRows.Count 'définit la ligne LI (dernière ligne de de TS)
Else 'sinon (au moins une occurrence est trouvée)
    LI = R.Row - TS.HeaderRowRange.Row 'définit la ligne LI (ligne de la première occurrence trouvée moins la ligne des en-têtes de TS)
End If 'fin de la condition
TS.DataBodyRange(LI, 1) = txtnom 'renvoie la valeur du contrôle dans la ligne LI colonne 1 de TS
TS.DataBodyRange(LI, 2) = txtprenom 'renvoie la valeur du contrôle dans la ligne LI colonne 2 de TS
TS.DataBodyRange(LI, 3) = txtmatricule 'renvoie la valeur du contrôle dans la ligne LI colonne 3 de TS
TS.DataBodyRange(LI, 4) = IIf(ckb1.Value = True, "Oui", "Non") 'renvoie "Oui" ou "Non" en fonction de la coche dans la ligne LI colonne 4 de TS
TS.DataBodyRange(LI, 5) = IIf(ckb2.Value = True, "Oui", "Non") 'renvoie "Oui" ou Non" en fonction de la coche dans la ligne LI colonne 5 de TS
TS.DataBodyRange(LI, 6) = IIf(ckb3.Value = True, "Oui", "Non") 'renvoie "Oui" ou "Non en fonction de la coche dans la ligne LI colonne 6 de TS
TS.DataBodyRange(LI, 7) = IIf(ckb4.Value = True, "Oui", "Non") 'renvoie "Oui" ou "Non en fonction de la coche dans la ligne LI colonne 7 de TS
TS.DataBodyRange(LI, 8) = cbogilet 'renvoie la valeur du contrôle dans la ligne LI colonne 8 de TS
TS.DataBodyRange(LI, 9) = cbogant 'renvoie la valeur du contrôle dans la ligne LI colonne 9 de TS
TS.DataBodyRange(LI, 10) = cbosousgant 'renvoie la valeur du contrôle dans la ligne LI colonne 10 de TS
TS.DataBodyRange(LI, 11) = cboparka 'renvoie la valeur du contrôle dans la ligne LI colonne 11 de TS
TS.DataBodyRange(LI, 12) = cbovestev 'renvoie la valeur du contrôle dans la ligne LI colonne 12 de TS
TS.DataBodyRange(LI, 13) = cbopantalon 'renvoie la valeur du contrôle dans la ligne LI colonne 13 de TS
TS.DataBodyRange(LI, 14) = cbopolomc 'renvoie la valeur du contrôle dans la ligne LI colonne 14 de TS
TS.DataBodyRange(LI, 15) = cbopoloml 'renvoie la valeur du contrôle dans la ligne LI colonne 15 de TS
TS.DataBodyRange(LI, 16) = cboteeshirt 'renvoie la valeur du contrôle dans la ligne LI colonne 16 de TS
TS.DataBodyRange(LI, 17) = cbovestedepluie 'renvoie la valeur du contrôle dans la ligne LI colonne 17 de TS
TS.DataBodyRange(LI, 18) = cbopantalondepluie 'renvoie la valeur du contrôle dans la ligne LI colonne 18 de TS
TS.DataBodyRange(LI, 19) = cbochaussures 'renvoie la valeur du contrôle dans la ligne LI colonne 19 de TS
TS.DataBodyRange(LI, 20) = cbochaussons 'renvoie la valeur du contrôle dans la ligne LI colonne 20 de TS
TS.DataBodyRange(LI, 21) = cbosemelles 'renvoie la valeur du contrôle dans la ligne LI colonne 21 de TS
End Sub

Merci ThauTheme

Ca fonctionne très bien, ainsi mon fichier est terminé. Franchement je n'aurai pas trouvé, je vais étudier la macro de près.

Jym

Re,

Je vais t'envoyer, quand j'aurais terminé, une nouvelle version plus aboutie...

Re,

En pièce jointe ton fichier modifié. Utilisation de la propriété [Tag] des contrôles pour pouvoir boucler sur les contrôles et récupération des tailles car il me semble que la même personne prendra les mêmes tailles mais dans tous les cas elle pourra en prendre des différentes...

13jym-ep-v01.xlsm (32.13 Ko)
Rechercher des sujets similaires à "case cocher userform vrai feuille"