Erreur 13 incompatibilité de type

Pres62 Messages postés 28 Statut Membre -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour à tous,

Je travaille sur access 2010 et j'ai un petit soucis......

Je vous explique.
J'ai un formulaire avec un bouton qui ouvre un état avec des dates, et un autre bouton qui ouvre une autre état identique au premier mais sans les dates.
Ce que j'aimerai c'est mettre une case à cocher sur le formulaire afin d'indiquer si oui ou non on met une date et ne plus avoir qu'un seul état.

Je l'ai testé avec le soucis des logos (Un état avec le logo et un autre sans l'affichage du logo de la boite).
J'ai donc fais une case à coché et dans la requête de l'état j'ai fais un nouveau champ avec "créer" et donc j'ai repris la valeur de la case à coché dans le formulaire.
Lorsque je coche la case, le résultat affiche "-1" et à l'inverse, 0.

Dans le code vba "sur chargement" j'ai donc mis :

If Me.res = 0 Then
Me.logo1.Visible = False
Me.logo2.Visible = False
Me.logo3.Visible = False
end if

Cela marche très bien.

En revanche, pour l'affichage des dates, j'ai fais exactement la même démarche mais là, je n'ai pas de "-1" ni de "0"...

Quand je coche, comme résultat j'ai 2 carrés avec un point d'interrogation à l'intérieur. A l'inverse, c'est null.

J'ai donc laissé comme ça et dans le code vba j'ai mis :

If Me.res2 = "" Then
Me.date1.Visible = False
Me.date2.Visible = False
Me.date3.Visible = False
end if

Et là, j'ai cette erreur "Erreur 13 Incompatibilité de type" qui apparaît sur la ligne

"If Me.res2 = "" Then "

Désolée il y a un peu de lecture ^^ mais ça me tracasse depuis ce matin :@

Merci pour votre aide

A voir également:

6 réponses

lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour,
Normal, change le "" par 0 ou False et ça devrait fonctionner.
Si Res2 est bien un CheckBox ?
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
bonjour,

sinon tu peux tester avec IsEmpty ou IsNull
eric
0
Pres62 Messages postés 28 Statut Membre
 
Bonjour,

Merci pour vos réponses !

lermite222 le =0 ou = false ne marche pas.
J'ai toujours cette erreur "Erreur 13 Incompatibilité de type" qui apparaît.......

Eriic avec IsEmpty et IsNull je n'ai plus d'erreur, mais rien ne change. Il ne cache pas les dates.......

Vous savez pourquoi ?

Merci beaucoup
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Déjà répond à la question de lermite.
C'est quoi comme objet Res2 ?
Tu parles de coches et de dates, et ensuite Il ne cache pas les dates, on ne s'y retrouve pas...

Tu peux déposer un classeur exemple (réduit) sur cjoint.com et coller ici le lien fourni.

eric
0
Pres62 Messages postés 28 Statut Membre
 
Oui désolée

Je te montre avec un exemple.
Voilà mon formulaire http://cjoint.com/data3/3Exqgn0DPZw.htm
Voilà mon état http://cjoint.com/data3/3ExqhsA6Qop.htm

Comme tu vois, j'ai fais une coche dans le formulaire et un bouton.
Quand tu clique sur le bouton, l'état s'ouvre.

Ensuite dans mon état j'ai repris le résultat de la coche dans la requête de l'état comme ceci :
http://cjoint.com/data3/3ExqhZy57V1.htm

J'ai comme affichage 2 carrés vides car la coche est cochée. Si elle n'est pas cochée, le résultat est VIDE.
Ce que j'aimerai maintenant c'est cacher le cadre, le sous état et le texte "Nous vous proposons les dates suivantes :"

Dans les propriétés de l'état j'ai mis ce code dans "sur chargement" comme ceci :
http://cjoint.com/data3/3ExqizHShed.htm

Je n'ai plus d'erreur mais, il ne se passe rien..... Il ne cache aucun des 3 éléments...
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Je n'avais pas fait attention que c'était pour access, je passe la main.
Mais pas sûr que des photos motives beaucoup les intervenants, rien ne vaut un fichier test.
Personnellement si un demandeur n'a pas le courage de le construire, je n'aurais pas le courage à sa place...

eric
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Tu dis...
J'ai toujours cette erreur "Erreur 13 Incompatibilité de type" qui apparaît.......
Sur quel ligne ?
Tu ne répond toujours pas à la question.. C'est un Coche ??
Toutefois tu met..
Me.cadre.Visible = False .. MAIS QUEL CADRE ?? tu ne met pas son N°
idem pour ls 2 autre
REPONDRE AUX QUESTIONS EST PRIMORDIALE SINON COMMENT VEUT-TU QU'ONT COMPRENNE.
A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pres62 Messages postés 28 Statut Membre
 
J'ai expliqué en haut avec les images..........
http://cjoint.com/data3/3ExqhsA6Qop.htm cette image représente l'état où il y a un cadre rose, un sous état dedans et un texte dedans.

Donc le Me.Cadre.Visible = false c'est le cadre rose...
donc me.texte.visible = false c'est le texte
et me.sousEtat.visible= false c'est le sous etat

Donc là, http://cjoint.com/data3/3ExqhZy57V1.htm dans les propriétés de l'état dans la zone "source" j'ai récupérer le résultat de la checkbox du formulaire ici : http://cjoint.com/data3/3Exqgn0DPZw.htm

Donc ce que j'aimerai c'est que quand on coche la checkbox du formulaire, et bien l'état s'ouvre mais en cachant les 3 éléments (le cadre, le sous etat et le texte).

Pour celà j'ai donc mis du code vba dans la zone "Sur chargement" comme ceci : http://cjoint.com/data3/3ExqizHShed.htm

Donc là je teste si RESULTAT est vide (car quand tu coches, et bien dans RESULTAT il n'y a rien. A l'inverse, il y a des petits carrés vides....)
Donc si c'est vide, je cache les 3 éléments.

L'erreur "Erreur 13 Incompatibilité de type" apparaissait sur la ligne
"If me.RESULTAT = "" then"

Mais depuis je l'ai remplacé par
"If IsNull(Me.RESULTAT) then"

Et là quand j'exécute je n'ai plus d'erreur, mais il ne se passe rien. Aucun des 3 éléments n'est caché.....
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Désolé, les images ne permettent pas de cerner ton problème.
Je passe la main.
A++
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0