Bonjour,

Je voudrais écrire en Vba une requête qui fonctionne en Sql, mais qui m'indique, une fois retranscrite, une erreur de syntaxe (opérateur absent).

Requête Sql :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT [5-1-1_Adresses].Adresse, [5-1-1_Adresses].Ville, [5-1-1_Adresses].Pays, [5-1-1_Adresses].CasePalais, [5-1-1_Adresses].AdPrincipale, [5-1-1_Adresses].IDAdresses FROM [5-1-1_Adresses] WHERE ((([5-1-1_Adresses].IDAdresses)=[Formulaires]![Test]![IDAdresses]));
Je pense que le souci vient de :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
[Formulaires]![Test]![IDAdresses]
J'ai essayé :

- [Formulaires]![Test]![IDAdresses]
- Me.IDAdresses
- Me!IDAdresses
- Me![IDAdresses]

Et heu, je sèche et n'ai pas d'autres idées.

Si besoin, je note mon code ci-dessous.
Merci d'avance pour votre aide.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Private Sub EtqAdresse_AfterUpdate()
 
    Dim connec As New Connection
    Dim Rst As New Recordset
    Dim str_sql As String
 
    str_sql = "SELECT [5-1-1_Adresses].Adresse, [5-1-1_Adresses].Ville, [5-1-1_Adresses].Pays," _
            & "[5-1-1_Adresses].CasePalais, [5-1-1_Adresses].AdPrincipale, [5-1-1_Adresses].IDAdresses" _
            & "FROM [5-1-1_Adresses]" _
            & "WHERE ((([5-1-1_Adresses].IDAdresses)=Me![IDAdresses]));"
 
 
    Set connec = CurrentProject.Connection
    Rst.Open str_sql, connec, adOpenDynamic, adLockOptimistic
 
        If IsNull(IDAdresses) = False Then
            Adresse.Value = Rst!Adresse
            Ville.Value = Rst!Ville
            Pays.Value = Rst!Pays
            CasePalais.Value = Rst!CasePalais
            AdPrincipale.Value = Rst!AdPrincipale
        End If
 
    Rst.Update
    Rst.Close
    connec.Close
 
End Sub