Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/05/2011, 18h25   #1
Membre du Club
 
Homme
Chef d'entreprise
Inscription : mai 2011
Messages : 57
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Chef d'entreprise
Secteur : Arts - Culture

Informations forums :
Inscription : mai 2011
Messages : 57
Points : 61
Points : 61
Par défaut Problème de typage ou autre

Bonjour,

Je me heurte à un problème de condition utilisant un champ de formulaire. Voici le code :

Code :
1
2
3
4
SQL1 = "INSERT INTO PAIES (IdAnimateur, IdFacture, Cachet) VALUES(" & _
            "[Formulaires]![F_Edition_Factures]![IdAnimateur1]," & _
            "" & IdFacture & "," & _
            "40 + [Formulaires]![F_Edition_Factures]![PartAnimateur]);"
Code :
1
2
3
If [Formulaires]![F_Edition_Factures]![IdAnimateur1] <> 4 Then
        DoCmd.RunSQL SQL1
    End If
Renvoie: Erreur d'exécution 2465: Microsoft Access ne trouve pas le champ " |1 " auquel il est fait référence dans votre expression

Code :
1
2
3
If "[Formulaires]![F_Edition_Factures]![IdAnimateur1]" <> 4 Then
        DoCmd.RunSQL SQL1
    End If
Renvoie : Erreur de type 13 : Incompatibilité de type

Code :
1
2
3
If "[Formulaires]![F_Edition_Factures]![IdAnimateur1]" <> "4" Then
        DoCmd.RunSQL SQL1
    End If
Ne renvoie pas d'erreur mais la commande SQL est effectuée même si la condition n'est pas vérifiée. Le champ IdAnimateur de la table PAIES affiche bien 4.

Du coup, je ne vois vraiment pas comment faire pour appliquer cette condition.

Merci par avance de votre aide.
Francesco34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 20h04   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonsoir,

Dans VBA on utilise [Forms] à la place de [Formulaires].
Code :
1
2
3
If [Forms]![F_Edition_Factures]![IdAnimateur1] <> 4 Then
   DoCmd.RunSQL SQL1
End If
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 30/05/2011, 20h43   #3
Membre du Club
 
Homme
Chef d'entreprise
Inscription : mai 2011
Messages : 57
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Chef d'entreprise
Secteur : Arts - Culture

Informations forums :
Inscription : mai 2011
Messages : 57
Points : 61
Points : 61
Tout simplement...
Vu que la syntaxe avec 'Formulaires' était bonne dans les requêtes, je n'ai pas pensé à passer en anglais dans le reste.

Merci beaucoup.
Francesco34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h28.


 
 
 
 
Partenaires

Hébergement Web