Checbox....

Provence Vintage

XLDnaute Occasionnel
Bonjour le Forum,

Dans un Usf de recherche; comment dire dans une CheckBox en VBA:
Si dans tel colonne, (en fonction d'une variable), Tel CheckBox si vrai donc en fonction de la valeur trouvée, la CheckBox est cochée!?
et avec par la suite, la possibilitée de la modifier, cochée, vrai, pas cochée faux et donc tel valeur à modification!

Merci à vous ttes et tous
 

Paritec

XLDnaute Barbatruc
Re : Checbox....

Bonsoir Provence le forum
alors lorsque tu cliques créer et que tu as 3 checkbox cochés tu concatenes tes trois valeur de mémoire a voir ok et je sais plus quoi;
si tu veux lorsque tu recherches un nom retrouver tes infos ne peux tu pas simplement avoir 3 colonnes?
a+
papou
 

fhoest

XLDnaute Accro
Re : Checbox....

bonjour,
si j'ai bien compris tu veux récuperer les valeur checkbox en fonction de ce qu'il est ecrit dans ta colonne B,
si c'est le cas je te conseille de toujours écrire tes valeurs dans le meme ordre et d'utiliser pour la recherche la fonction MID(Cells(L, "B"),1,2) = "OK" ensuite MID(Cells(L, "B"),3,6) = "A VOIR" et le reste MID(Cells(L, "B"),7, 15)= "A TESTER" en inscrivant tes valeurs dans la colonne avec des espaces si valeur intermaidiare inexistante
exemple1:
ta cellule = "OKAVOIRATESTER"
exemple2 avec espace:
ta cellule="OK ATESTER",5 espaces pour "AVOIR"
A revoir si les chiffres de fonction MID corresponde bien a ce que tu cherche,pour ca je te conseille de mettre des msgbox mid(cell(l,"b"),1,2)etc... a l'interieur de ton code ou d'utiliser l'espion du vba
allez A+ et sans rancune
 

Lii

XLDnaute Impliqué
Re : Checbox....

Salut,

Essaies-tu de comprendre les codes utilisés ?
Il semble que non, sinon tu aurais vite trouvé comment te servir à nouveau de "Find" !
Voilà un début,
Code:
Private Sub CommandButton1_Click()
    Dim cel As Range
    Dim r As Range
    
    Set r = Columns(1).[B]Find(TextBox1)[/B] [COLOR=SeaGreen]‘ligne simplifiée[/COLOR]
    If Not r Is Nothing Then
      L = r.Row
      [B][COLOR=Black]Set r = Cells(L, 2).Find("OK")
       CheckBox1 = IIf(Not r Is Nothing, True, False)[/COLOR][/B]
      …
    end if
end sub
À toi de trouver les 4 lignes manquantes.
Tu pourrais ajouter, au tout début, la ligne
Option Compare Text
qui permet d’éviter des problèmes de comparaison avec majuscules et minuscules.
 

fhoest

XLDnaute Accro
Re : Checbox....

bonjour a tous
voila le code que je te proposé avec les bonnes valeurs:
UserForm1.TextBox1 = Cells(L, "A")
If Mid(Cells(L, "B"), 1, 2) = "OK" Then
UserForm1.CheckBox1 = True
Else: UserForm1.CheckBox1 = False
End If
If Mid(Cells(L, "B"), 4, 6) = "A VOIR" Then
UserForm1.CheckBox2 = True
Else: UserForm1.CheckBox2 = False
End If
If Mid(Cells(L, "B"), 11, 8) = "A TESTER" Then
UserForm1.CheckBox3 = True
Else: UserForm1.CheckBox3 = False
End If
End If

ceci dit lorsqu'il y a une seule valeur rempli par les checboxs dans la colonne "b" il ne faut pas oublier de mettre les espaces a la place des instructions exemple pour zarm,
dans la colonne b tu as :A VOIR devant ceci lorsque tu remplis a la place de mettre A VOIR directement tu mets ---A VOIR------ les petits traits d'union doivent obligatoirement remplacé tes caractères "OK" et "A TESTER" sans oublier de remplacer également les espaces...
pour l'espion tu te mets dans ton code avec le mode pas a pas touche F8,ensuite tu peux y placé des points d'arrets pour ceci il te suffit juste de cliquez sur le devant d'une ligne de code le point d'arret et représenter par un rond,ensuite tu selectionne une variable tu fais un clique droit et ajouter espion normalement dans une fenetre espion tu as la valeur de ta variable
Voila A+
 

Discussions similaires

Statistiques des forums

Discussions
312 294
Messages
2 086 896
Membres
103 404
dernier inscrit
sultan87