Conditions Requête SQL
R
Bonjour à tous,
Je viens vers vous suite à un problème au niveau d'une requête SQL pour importer des données en provenance d'Access et vers Excel en VBA.
Mon code fonctionne, cependant je voudrais ajouter une condition à cette requête et c'est ici que ça bloque.
Voici mon code :
Sub Alimentation_PBL()
'-----------------------------------------------------------------------------------------------------------------
' !
' Chargement des PBL à partir de la base de données liquidités !
' !
'-----------------------------------------------------------------------------------------------------------------
Dim BDD_Liquidités As New ADODB.Connection
Dim recup As New ADODB.Recordset
Dim Nom_Base As String
Dim SQL_Req As String
Dim b As Long
Dim Y As Boolean
Dim A As Date
Dim f, i, iC, iCC, T, V, k, An, S, M, c As Integer
'Arrêt de l'actualisation de l'écran et des messages d'alerte
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'####################################################################################################################################
' #
' ETAPE 1 : Importation des données #
' #
'####################################################################################################################################
Set Doc1 = Workbooks("Détail tableau PBL MLT Cr 822 06-2014.xls").Sheets("Feuil1")
Set Doc2 = Workbooks("Détail tableau PBL MLT Cr 822 06-2014.xls").Sheets("PBL")
'Nettoyage de l'importation précédente
Doc1.Range("A23:AV23").Value = ""
Doc2.Columns("A:M").Value = ""
Doc2.Columns("T:U").Value = ""
Doc2.Range("X2:BK50").Value = ""
'Date de référence entrée par l'utilisateur
A = InputBox("Entrer la date du dernier arrêté comptable au format jj/mm/aaaa", "Date")
Doc2.Cells(1, "X").Value = A
b = CLng(A)
'Emplacement de la base, à modifier si jamais on la déplace sur le disque
Nom_Base = "J:\SOCIETE\PARTAGE-FCG-PGF\Liquidité\Outil Liquidité\liquidits.mdb"
''Nom_Base = "J:\SOCIETE\PARTAGE-FCG-PGF\Liquidité\Outil Liquidité\liquidits.mdb"
'Appel + Filtrage de la BDD
If Dir(Nom_Base) = "" Then
MsgBox "Echec du chargement de la base de données, le chemin d'accès est incorrect.", vbCritical
Else
BDD_Liquidités.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Nom_Base
'Lancement de la requête SQL d'importation en fonction de la date, de la base de données Access liquidités
SQL_Req = "SELECT Détail, Nominal, Type, Départ,Échéance , [Type Taux],[Calcul Taux], Taux, Amortissement, Périodicité, Spread, Indice,RA FROM [BDD LIQUIDITE] WHERE [BDD LIQUIDITE].Groupe ='MLT' AND [BDD LIQUIDITE].Type ='PBL' AND [BDD LIQUIDITE].Échéance >" & b
recup.Open SQL_Req, BDD_Liquidités, adOpenForwardOnly
'Export des résultats et mise en forme des colonnes dates
Doc2.Range("A1").CopyFromRecordset recup
'Fermeture de la base de données
recup.Close
BDD_Liquidités.Close
End If
'Tri des différents type de PBL
Doc2.Activate
Doc2.Columns("A:M").Sort Key1:=Columns("I"), Order1:=xlAscending, Key2:=Columns("J"), Order1:=xlAscending
End SubIci en plus du " AND [BDD LIQUIDITE].Échéance >" & b " je voudrais rajouter une condition du type " AND [BDD LIQUIDITE].RA <" & b " mais je n'y arrive pas...
Quelqu'un aurait il une solution pour ça?
Merci d'avance!
T
Bonjour,
Regarde du coté de BETWEEN !
Hervé.
E
"SELECT Détail, Nominal, Type, Départ,Échéance , [Type Taux],[Calcul Taux], Taux, Amortissement, Périodicité, Spread, Indice,RA FROM [BDD LIQUIDITE] WHERE [BDD LIQUIDITE].Groupe ='MLT' AND [BDD LIQUIDITE].Type ='PBL' AND [BDD LIQUIDITE].Échéance >" & b & " AND [BDD LIQUIDITE].RA <" & b R
Merci beaucoup, cela venait donc de la subtilité des ""