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

erreur 13 ds une formule (VBA)

  • Initiateur de la discussion Initiateur de la discussion lamouche42
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

L

lamouche42

Guest
rebonjour 🙂

voici la formule suivante
Code:
Private Sub Calculer_Click()
Userform1.TotalAnimalH.Value = (Userform1.AnimalH.Value + Userform1.GenericL.Value * 3) * bdd(4, 2) * Userform1.TauxAnimalH.Value
End Sub
elle me donne une erreur 13.
en isolant certaines parties de la formule je constate que si je mets :
Code:
Private Sub Calculer_Click()
Userform1.TotalAnimalH.Value = (Userform1.AnimalH.Value + Userform1.GenericL.Value * 3) * bdd(4, 2) ' * Userform1.TauxAnimalH.Value
End Sub
la formule ne renvoi pas d'erreur

cette textbox qui semble faire defaut est definie comme ceci :
Code:
Userform1.TauxAnimalH.Value = bdd(2, taux)
sur la feuille 2 ou il y a le bouton de lancement de userform.

ce code marche car la bonne valeur est insérée ds la textbox

avez vous une idée d'ou peut venir le malaise? au besoin je peux vous joindre le projet entier

d'avance merci
 
Dernière modification par un modérateur:
Re : erreur 13 ds une formule (VBA)

Bonjour Lamouche42, le forum,


edit :

Erreur de ma part, j'ai mal interprété ta formule.
Ton erreur 13 correspond à une incompatibilité de type
Comment as-tu déclaré tes variables ?
 
Dernière édition:
Re : erreur 13 ds une formule (VBA)

Re,

En vérifiant dans un de tes précédents post, je vois que tu as déclaré ta variable avec le type Long (entier).
Vérifies que tu n'obtiens pas un résultat avec virgule flottante, auquel cas tu devras déclarer ta variable en Single ou Double

Essaies et tiens nous au courant
Kotov


Pour info :

Long
Nombre entier codé sur 4 octets (32 bits) et dont la valeur est comprise entre -2 147 483 648 et 2 147 483 647.
Dans Visual Basic, le signe et commercial (&) est le caractère de déclaration du type Long.


Single
Type de données qui regroupe des variables à virgule flottante en simple précision sous forme de nombres à virgule flottante codés sur 32 bits (4 octets), dont la valeur est comprise entre -3,402823E38 et -1,401298E-45 pour les valeurs négatives, et entre 1,401298E-45 et 3,402823E38 pour les valeurs positives.
Dans Visual Basic, le point d'exclamation (!) est le caractère de déclaration du type Single.

Double
Type de données stockant sur 64 bits les nombres à virgule flottante en double précision compris entre -1,79769313486231E308 et -4,94065645841247E-324 pour les valeurs négatives, et entre 4,94065645841247E-324 et 1,79769313486232E308 pour les valeurs positives.
Dans Visual Basic, le signe dièse (#) est le caractère de déclaration du type Double.
 
Re : erreur 13 ds une formule (VBA)

dsl de pas avoir repondu plus tot ... j' avais pas vu que ce fil avait continué

bon l'erreur venais de moi comme d'hab 😀
la variable taux etait pal initialisée et retonmbais sur une donnée texte du tableau ...
enfin c'etais tout betement un truc de ce style 😀

je verifie mieux maintenant lol

encore dsl de pas avoir surveillé ce fil et merci de votre attention
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
37
Affichages
3 K
Réponses
8
Affichages
1 K
H
Réponses
2
Affichages
748
Hell Wheel
H
Réponses
3
Affichages
926
S
Réponses
2
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…