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

HELP, Importer sous condition à partir d'un classeur fermé

  • Initiateur de la discussion Initiateur de la discussion nak
  • 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 !

nak

XLDnaute Occasionnel
Bonjour à tous,

Je sèche sur une importation de donnée ADODB avec condition.
J'aimerais récupérer chaque ligne de mon fichier base qui contiendrait la valeur de ma cellule F4 en colonne B.

Voici mon code qui fonctionne sans condition :
VB:
Sub LertureFerme()
    Dim Cn As ADODB.Connection
    Dim Fichier As String
    Dim NomFeuille As String, texte_SQL As String
    Dim Rst As ADODB.Recordset
    
    'Définit le classeur fermé servant de base de données
    Fichier = ThisWorkbook.Path & "\base.xls"
    'Nom de la feuille dans le classeur fermé
    NomFeuille = "Feuil1"
    
    Set Cn = New ADODB.Connection
    
    '--- Connection ---
    With Cn
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .ConnectionString = "Data Source=" & Fichier & _
            ";Extended Properties=Excel 8.0;"
        .Open
    End With
    '-----------------
    
    'Définit la requête.
    '/!\ Attention à ne pas oublier le symbole $ après le nom de la feuille.
    texte_SQL = "SELECT * FROM [" & NomFeuille & "$]"
    
    Set Rst = New ADODB.Recordset
    Set Rst = Cn.Execute(texte_SQL)
    
    'Chercher la valeur dans la BdD
    'Rst.Find "F1 = '" & Cells(4, 6) & "'", , adSearchForward, 1
    
    'If Rst.EOF = True Then
    Cells(11, 1).CopyFromRecordset Rst
    'End If
    
    '--- Fermeture connexion ---
    Cn.Close
    Set Cn = Nothing

End Sub

Je joins également les fichiers pour exemple.

Pouvez-vous m'aider ?

Merci

A+
 

Pièces jointes

Dernière édition:
Re : HELP, Importer sous condition à partir d'un classeur fermé

J'essai de récuperer ligne par ligne avant de mettre ma condition.

Code:
For i = 0 To Rst.RecordCount
Cells(i + 11, 1) = Rst.Fields(i).Name
Next i

Malheureusement rien ne se passe 🙁

Personne n'a une idée ?

Merci
 
Re : HELP, Importer sous condition à partir d'un classeur fermé

En fait le Rst.RecordCount ne fonctionne pas. Normalement cela devrait me permettre de compter les lignes.

Personne a une idée SVP ?
 
- 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

Discussions similaires

Réponses
15
Affichages
4 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…