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 :

vba excel et sql server


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 4
    Par défaut vba excel et sql server
    bonjour à tous

    Je dois faire une macro vba excel qui me permet de récuperer des valeurs qui sont dans une base de données.

    Il faut qu'une des dates soit égale à la valeur que je mets dans un inputbox. Mais ça ne marche pas.
    Voici ma macro.

    Pouvez-vous me dire ce qui cloche ? elle me marque qu'il y a un problème de syntaxe sql...

    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
    38
    39
    40
    Sub macrodate()
     
    Dim Message, Title, Default, MyValue
    ' Définit le message.
    Message = "Entrez la date désirée"
    Title = "Insertion d'une date"    ' Définit le titre.
    Default = Date
    Default = Now
    MyValue = InputBox(Message, Title, Default)
    MyValue = MyValue & " 00:00:00"
     
     
     
        With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(Array( _
            "ODBC;DSN=MS Access Database;DBQ=C:\Users\ADRIENNE\Documents\Base de données1.accdb;DefaultDir=C:\Users\ADRIENNE\Documents;DriverId=2" _
            ), Array("5;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;")), Destination:= _
            Range("$f$1")).QueryTable
            .CommandText = Array( _
            "SELECT ESSAIADRIENNE.`N°`, ESSAIADRIENNE.NOM, ESSAIADRIENNE.PRENOM, ESSAIADRIENNE.`DATE DE NAISSANCE`, ESSAIADRIENNE.`DATE D'ARRIVEE`" & Chr(13) & "" & Chr(10) & "FROM `C:\Users\ADRIENNE\Documents\Base de données1.accdb`.ESSAIAD" _
            , _
            "RIENNE ESSAIADRIENNE" & Chr(13) & "" & Chr(10) & "WHERE ESSAIADRIENNE.`DATE D'ARRIVEE`= " & MyValue & "ORDER BY ESSAIADRIENNE.`N°`" _
            )
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .BackgroundQuery = True
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .PreserveColumnInfo = True
            .ListObject.DisplayName = _
            "Tableau_Lancer_la_requête_à_partir_de_MS_Access_Database_1"
            .Refresh BackgroundQuery:=False
        End With
     
     
    End Sub
    Je ne vois pas où se situe le problème...

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Les dates sont au format texte, il faut mettre des apostrophes autour de ta variable dans le where

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            "SELECT ESSAIADRIENNE.`N°`, ESSAIADRIENNE.NOM, ESSAIADRIENNE.PRENOM, ESSAIADRIENNE.`DATE DE NAISSANCE`, ESSAIADRIENNE.`DATE D'ARRIVEE`" & Chr(13) & "" & Chr(10) & "FROM `C:\Users\ADRIENNE\Documents\Base de données1.accdb`.ESSAIAD" _
            , _
            "RIENNE ESSAIADRIENNE" & Chr(13) & "" & Chr(10) & "WHERE ESSAIADRIENNE.`DATE D'ARRIVEE` = '" & MyValue & "'ORDER BY ESSAIADRIENNE.`N°`" _
            )
    Bon courage

Discussions similaires

  1. Importation d'une feuille excel vers sql server 2005
    Par transistor49 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 16/09/2009, 19h31
  2. Importé un fichier excel sous SQL Server 2005
    Par summer91 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 01/05/2006, 10h52
  3. [VBA-Excel] test de server
    Par fixmi dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/01/2006, 17h12
  4. Probléme VBA Word et SQL server
    Par andrau dans le forum VBA Word
    Réponses: 2
    Dernier message: 12/10/2005, 11h52
  5. Exportation automatique Excel vers SQL Server
    Par jhalawa dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 14/07/2005, 11h45

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