IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Importer des données en sql via macro


Sujet :

Macros et VBA Excel

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 205
    Points : 89
    Points
    89
    Par défaut Importer des données en sql via macro
    Je souhaite importer des données d'une base de données sélectivement en utilisant une macro VBA, comment faire?
    Merci

  2. #2
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Quel est votre SGBD?

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 205
    Points : 89
    Points
    89
    Par défaut
    Sql server 2005

  4. #4
    Invité
    Invité(e)

  5. #5
    Débutant
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 205
    Points : 89
    Points
    89
    Par défaut
    Finalement, c'est du 2008...

    De plus, il ne reconnaît pas ADODBRD

    PS: où rentrer le nom de la base dans le premier encart ?
    Merci

  6. #6
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Bonjour,
    essayé comme cela

    il faut ajouter la référence: Microsoft ActiveX Data Objects 2.8 Library

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    Sub connect()
     
    Dim DB_DATA As ADODB.Connection
    Dim RS_DATA As New ADODB.Recordset
    Dim sql As String
    Dim ConnectionString As String
     
        Set DB_DATA = New ADODB.Connection
        Set RS_DATA = New ADODB.Recordset
     
        ConnectionString = "Provider=SQLOLEDB.1;Data Source=LA SOURCE;Initial Catalog=VOTRE BASE DE DONNEE;User Id=VOTRE ID;Password=VOTRE MOT DE PASSE"
     
        DB_DATA.Open ConnectionString
     
     
        i = 5
     
        sql = "SELECT * FROM [NOM_BASE_DONNE].[dbo].[VOTRE TABLE] where VOTRE_COLONNE ='TOTO' and VOTRE_COLONNE_2 = 'TATA'" & _
            " order by VOTRE_COLONNE,VOTRE_COLONNE_2"
     
        Set RS_DATA = DB_DATA.Execute(sql)
     
        While RS_DATA.EOF = False
            With Sheets("Complet_Individuel")
                .Cells(i, 1).Value = RS_DATA("Votre colonne").Value
            End With
     
            i = i + 1
            RS_DATA.MoveNext
     
        Wend
     
     
        DB_DATA.Close
        Set DB_DATA = Nothing
        Set RS_DATA = Nothing
    End Sub

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 205
    Points : 89
    Points
    89
    Par défaut
    Quel est le renseignement que je dois fournir dans provider?
    Je suppose que la source est le fichier mais dois-je rajouter le chemin?
    Merci

  8. #8
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Citation Envoyé par glooping Voir le message
    Quel est le renseignement que je dois fournir dans provider?
    Provider=SQLOLEDB.1



    Citation Envoyé par glooping Voir le message
    Je suppose que la source est le fichier mais dois-je rajouter le chemin?
    Data Source=Le chemin du server sql

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Tu travail avec un fichier ou un client sql serveur
    Dans le lien que je t'ai donné tu as tout.
    Si faut adapter pas de problème,ça me fera un autre connecteur ODBC, si non 2005 devrait fonctionner!

  10. #10
    Débutant
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 205
    Points : 89
    Points
    89
    Par défaut
    Il me met
    "Erreur de compilation :
    Type défini par l'utilisateur non défini"
    Dès la première ligne!
    Que faire?

  11. #11
    Invité
    Invité(e)
    Par défaut
    bonjour,
    ouvre mon fichier ADODBRD.xls, maintiens le click gauche de la sourie et fais glisser le module de classe ADODBRD vers ton projet!

Discussions similaires

  1. Macro importer des données via ODBC
    Par FIFI33160 dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 28/06/2018, 12h08
  2. [AC-2003] Importer des données tableur Excel via le presse papier
    Par CIRE3 dans le forum VBA Access
    Réponses: 1
    Dernier message: 08/07/2013, 22h25
  3. Importer des données de sql server dans un fichier excel
    Par sab_info dans le forum Développement
    Réponses: 2
    Dernier message: 30/01/2013, 09h45
  4. [AC-2007] Importer des données dans Access via ODBC en spécifiant avec critères
    Par zamalos dans le forum VBA Access
    Réponses: 1
    Dernier message: 23/12/2011, 12h22
  5. Importer des données dans sql server avec DELPHI ???
    Par moutanakid dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/08/2004, 17h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo