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

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 Vintage
tu ne penses pas que plus que des encouragements nous aurions besoin d'un bout de fichier avec ce que tu souhaites, bien expliqué avec un exemple?
a+
Bonne soirée
Papou
 

fhoest

XLDnaute Accro
Re : Checbox....

bonjour,
n'ayant pas eut de reponse sur un autre fil de ta part je suppose que le userform de recherche que je t'ai donné ne t'interresse pas
mais je te remercie quand meme de ta reponse.
bonne journée a tous
 

Provence Vintage

XLDnaute Occasionnel
Re : Checbox....

Re bonjour le Fil,
Pour la discussion sur ce fil,

Voici un fichier exemple
merci à toutes et tous
Bonne journée
A+
 

Pièces jointes

  • CHECKBOX.zip
    17.4 KB · Affichages: 25
  • CHECKBOX.zip
    17.4 KB · Affichages: 24
  • CHECKBOX.zip
    17.4 KB · Affichages: 18

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
 

Provence Vintage

XLDnaute Occasionnel
Re : Checbox....

fhoest, paritec, le fil,

ci-joint fichier test refait, mais....
merci à toutes et tous pour vos idées!
bonne journée
 

Pièces jointes

  • CHECKBOX2.zip
    20.2 KB · Affichages: 28
  • CHECKBOX2.zip
    20.2 KB · Affichages: 25
  • CHECKBOX2.zip
    20.2 KB · Affichages: 23

Provence Vintage

XLDnaute Occasionnel
Re : Checbox....

Paritec, Fhoest, le Fil,

Et par le .caption plutôt que le .Value ?
Dans tous les cas, c la merdouille, il doit bien y avoir une logique qui nous permet d'une même cellule, de récupérer les enregistrements respectifs...?
A+ de vous lire
 

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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…