|
|
|
|
Posté par
nathh76, le lundi 16 juillet 2007 à 16:54:48Configuration: Windows XP Internet Explorer 6.0
Bonjour
Je contournerais ce problème comme ceci if IsNull ([Base TVA0 sous-formulaire].Form![SommeDePrix_element] ) then [base TVA0] = 0 else [base TVA0] = [Base TVA0 sous-formulaire].Form![SommeDePrix_element] end if |
Merci Freto.
J'ai essayé, mais j'ai toujours un message d'erreur. ca marche pas car le champs [Base TVA0 sous-formulaire].Form![SommeDePrix_element] ne s'affiche pas dans mon sous-formulaire. Une autre idée peut-etre ? Quelle galère, je suis pas habituée a faire du code, je passe toujours par les assistants. |
Mais comment sa il ne s'affiche pas???tu ne modifie pas sa visibilité quelque part??
Peut tu donner le message d'erreur qu'il t'affiche exactement? |
en fait je cherche a faire une apli qui permet de faire des factures. Sur une meme factures je peux avoir plusieurs taux de TVA. Donc j'ai fait des sous-formulaires cachés qui calcul le montant de base de TVA pour chaque taux de TVA. cela marche tres bien lorsque j'ai tous les taux de TVA sur ma facture. Mais lorsque j'ai un taux de TVA qui n'est pas utilisé, je n'ai pas de valeur dans mon sous-formulaire, donc rien d'affiché.
Lorsque j'essai ton code j'ai l'erreur suivante : Erreur d'execution 2113 valeur incorrecte pour ce champ. |
Et ton champ [base TVA0] est un champ texte ou un numérique??
Sinon, essaie de déboger l'appli...place un point d'arret au nivau du if IsNull... puis apuis sur F8 pour voir par ou passe le code lorssqu'il te sort une erreur |
C'est un champ numérique.
J'ai jamais fais de debogage, mais si j'ai bien tout compris, apres avoir mis le point d'arret, il passe au else. Donc il ne considere pas que le champ est null, s'est bien ca. Désolé je debute. |
Si il passe au else directement c'est que la fonction IsNull renvoie faux....dans ce cas, soit ton champ n'est pas vide, soit le test est faux
Donc essaie pluto ce genre de if if [Base TVA0 sous-formulaire].Form![SommeDePrix_element] = "" then On débute tous un jour tu n'a pas à être désolée |
lorsque j'essaie ce code j'ai l'erreur suivante :
erreur d'execution 2427 expression sans parametres. c'est sympa a toi de me consacrer de temps. merci. |
Tu peut essayer de débugger a partir toujours de la ligne du if??
J'aimerais savoir quelle ligne du programme est surlignée après que tu aie appuyé sur la touche F8? |
c'est la ligne du If qui est surligné. |
et si tu appuie encore sur F8?? |
A chaque fois j'ai le message d'erreur. il reste bloqué sur la ligne du if. |
Est ce que le message d'erreur survient avant que le code n'apparaisse avec ta ligne d'arrêt? normalement ton code doit apparaitre puis lorsque tu appuie sur F8 une autre ligne devient surlignée...si le message d'erreur apparait alors que tu appuie sur F8, alors essaie ce if
if [Base TVA0 sous-formulaire].SommeDePrix_element.Value = "" then |
j'ai toujours le meme message d'erreur. |
Dans ce cas, juste après le if, essaie cette ligne
Me![base TVA0] = 0 a la place de [base TVA0] = 0 |
toujours le meme soucis |
Waou..... je vais finir par sécher ...;-)
Il faudrait que tu m'envoie tout le code que tu a autour de ton if(juste le sub), je vais l'essayer |
voila le code.
Private Sub Commande49_Click() DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70 If [Base TVA0 sous-formulaire].Form!SommeDePrix_element.Value = "" Then Me![base TVA0] = 0 Else: [base TVA0] = [Base TVA0 sous-formulaire].Form![SommeDePrix_element] End If [Montant TVA55] = [base TVA55] * 0.055 [Montant TVA196] = [base TVA196] * 0.196 [Montant HT] = [base TVA0] + [base TVA55] + [base TVA196] [Montant TVA] = [Montant TVA55] + [Montant TVA196] [Montant TTC] = [Montant HT] + [Montant TVA] End Sub l'autre piste que j'essaie s'est d'obliger le sous-formulaire a mettre un resultat a zero, mais je galere toujours. C'est la premier fois que je viens sur un forums, c'est vraiment sympa de pouvoir trouver de l'aide. merci. |
Enleve les deux points déjà après le else, et réessaie...mais je pense pas que l'erreur vienne de la, en revanche ce sera une source d'erreurs plus tard |
| 14/04 20h26 | Valider le code HTML d'une page web | HTML |
| 13/04 12h54 | VBA et les collections d'objets. | Excel |
| 18/05 04h22 | Lutter contre le spam | Spam |
| 10/12 11h42 | Créer un site beau, dynamique et respectueux des standards | Webmaster |
| 27/03 18h18 | Il est possible de récupérer le code source PHP d'un site | Mythes et légendes |
| 26/05 11h44 | Générer d rectangles par code VBA s/s Access | 0 |
| 03/12 16h26 | Activer du code vb si valeur de pivot change | 0 |
| 21/09 10h29 | [VBA ACCESS] Pb récupération valeurs Listbox | 1 |
| 02/07 15h03 | VB6 - Récupérer les valeurs de la souris | 7 |
![]() | Vista Codec Package - Vista Codec Package regroupe une collection impressionnante de codecs (audio et vidéo), permettant d'ouvrir la plupart... | Catégorie: Codecs Licence: Freeware/gratuit |
![]() | DivX codecs - Le codec Divx Community est gratuit pour un usage personnel et permet de lire les fichiers au format DivX ! L'installeur... | Catégorie: Codecs Licence: Freeware/gratuit |
![]() | K-Lite Codec Pack Full - K-Lite Codec Pack est une collection de codecs et de filtres nécessaires pour encoder ou décoder des formats audio ou vidéo.... | Catégorie: Codecs Licence: Open Source |
![]() | Visual Basic 6 Runtime (VB6 DLL) - Le Runtime Visual Basic 6 contient l'ensemble des librairies (DLL) nécessaires pour exécuter des programmes écrits en... | Catégorie: Librairies (DLL) Licence: Freeware/gratuit |
![]() | Thermaltake VB7000SNS Tuba Mid | Catégorie: Boîtier PC | 39.95 € Rue du Commerce |
![]() | Thermaltake 139 VB1000SNS Soprano | Catégorie: Boîtier PC | 68.90 € Toutpourlamicro.com |
![]() | Thermaltake Soprano VB1000BNS Mid | Catégorie: Boîtier PC | 70.90 € Rue du Commerce |
![]() | ASUS VB191T Black | Catégorie: Moniteur LCD | 178.60 € Atlanpolis |