CheckBox contrôle de formulaire ou Activex?

Bonjour,

J'ai une petite question :

Page 1 : "Prise en compte", j'ai un tableau de donnée classique

Page 2 : "IMPRIME", j'ai une fiche/courrier qui se remplira automatiquement selon la ligne choisi.

J'ai mis des checkbox pour que suivant la donnée du tableau, ça se check ou pas ...

J'ai quelque chose qui ressemble à :

If Range("C54").Value = "DT" Then
        CB_DT.Value = True
        CB_DICT.Value = False
        CB_DTDICT.Value = False
    Else
        If Range("C54").Value = "DICT" Then
            CB_DT.Value = False
            CB_DICT.Value = True
            CB_DTDICT.Value = False
        Else
            CB_DT.Value = False
            CB_DICT.Value = False
            CB_DTDICT.Value = True
       End If
  End If

les noms de mes CheckBox sont bien correct.

Mais j'ai l'impression que ce n'est pas bon... que mes name ne sont peut être pas pris en compte

capture

Est-ce parce que je suis en ActiveX?

J'ai l'impression que comme d'hab c'est tout bête, mais je ne vois pas....

Bonjour

N'as tu pas laissé le mode création (developpeur/Mode création)...

A+ François

Bonjour,

Non, du tout, lorsque je lance le débogage

image

Il rentre bien dans la bonne case, mais c'est comme s'il ne reconnaissait pas mes "name"...

Bonjour

Sans fichier je ne peux rien faire pour toi

A+ François

Voici!!

21suivi-fiche-auto.xlsm (105.15 Ko)

Bonjour à tous,

Le code est écrit dans Module1.

Au sein de Module1, l'objet CB_DT est inconnu. L'objet est un objet de la feuille "IMPRIME". Il faut l'indiquer à Module1.

Ecrire : Sheets("IMPRIME").CB_DT

Re,

Le code suivant fera l'affaire :

With Sheets("IMPRIME")                       ' avec la feuille "IMPRIME". Dans la suite Sheets("IMPRIME") 
                                             ' sera remplacé par le point "." en préfixe
   .Select                                   ' on la sélectionne
   .CB_DT = (.Range("C54") = "DT")           ' la case à cocher est vrai si .Range("C54") vaut DT sinon faux
   .CB_DICT = (.Range("C54") = "DICT")       ' la case à cocher est vrai si .Range("C54") vaut DICT sinon faux
   .CB_DTDICT = (.Range("C54") = "DT/DICT")  ' la case à cocher est vrai si .Range("C54") vaut DT/DICT sinon faux
End With

Oooooooooh Magnifique!!!! Merci

Je pensais que le

Sheets("IMPRIME").Select

Suffisait pour exprimer le fait de "travailler" sur le feuille imprime.

Merci beaucoup.

Re ,

Je pensais que le

Sheets("IMPRIME").Select

Suffisait pour exprimer le fait de "travailler" sur le feuille imprime.

On peut très bien sélectionner la feuille de cette manière.

J'ai pris l'habitude du With ... End With qui permet de référencer la feuille sans la sélectionner. Elle permet de prévenir un éventuel changement de feuille dans la procédure qui ferait que les Range suivant du code ne sont plus dans la bonne feuille. Avec le préfixe ".", .range() est sur la bonne feuille même si on a changé de feuille active.

Chaque codeur a ses petites habitudes voire manies.

Rechercher des sujets similaires à "checkbox controle formulaire activex"