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 :

Erreur 1004 lors de la copie d'une feuille depuis MA


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 10
    Par défaut Erreur 1004 lors de la copie d'une feuille depuis MA
    Bonjour,
    J'ai épluché pleins de pages pour essayer de trouver la solution sans succes. Je m'en remets donc a vous:
    Je souhaite copie une table depuis Microsoft Access vers Excel 2003 et je recois un message d'erreur: "Run-time Error '1004': General ODBC Error
    Il s'arrete a la ligne suivante: .Refresh BackgroundQuery:=True

    Et voila le code:
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    Sub GetDataTechSupport()
     
     
        Sheets("Data").Select
        Cells.Select
        Selection.Delete Shift:=xlUp
        Range("A1").Select
        Dim SelectionSql, Orderby As String
     
        SelectionSql = "`Export Tech Support`.Week, "
        SelectionSql = SelectionSql & "`Export Tech Support`.Date_,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Hours,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Initial_,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Activity,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Costs_Incurred,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Miles,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Project_Name,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Project_Number,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Category,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Client_No,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Xcharge_Recipient,"
        SelectionSql = SelectionSql & "`Export Tech Support`.RateHours,"
        SelectionSql = SelectionSql & "`Export Tech Support`.ID_ProdClass,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Compensation_Event,"
        SelectionSql = SelectionSql & "`Export Tech Support`.Mats_Labour_Commitment"
     
        Orderby = "ORDER BY `Export Tech Support`.Project_Name, `Export Tech Support`.Date_"
     
        With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
            "ODBC; DSN=MS Access Database; DBQ=" & PathMasterDB & ";DefaultDir=" & DirMasterDB & ";DriverId=25;FIL=MS Access;Max" _
            ), Array("BufferSize=2048;PageTimeout=5;;UID=admin;")), Destination:=Range( _
            "A1"))
            .CommandText = Array( _
            "SELECT    Selection" & Chr(13) & "" & Chr(10) & "FROM `" & PathMasterDB & "`.`Export Tech Support` `Export Tech Support`" & Chr(13) & "" & Chr(10) & Orderby)
            .Name = "Query from MS Access Database"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .BackgroundQuery = True
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = True
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .PreserveColumnInfo = True
            .Refresh BackgroundQuery:=True
        End With
     
        Sheets("Main").Select
        Range("A1").Select
     
    End Sub
    Quelqu'un peut-il me donne une idée pour que je puisse avancer car là je suis bloqué...

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, voir dans la FAQ
    Pour la Table cela sera [Export Tech Support] et non `Export Tech Support`

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 10
    Par défaut
    C'est tres surprenant car la fonction querytable a deja fonctionné avec des quotes mais les crochets semblent avoir retiré un probleme en tout cas car le message d'erreur a changer
    ------> "Incomplete datasource" j'ai verifié et la requete me semble correcte.
    Je vais surement utiliser la methode par ADO a la place

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/06/2015, 09h21
  2. [XL-2000] Erreur lors de la copie d'une feuille vers un autre classeur qui vient d'être créé
    Par Hankow dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 07/04/2015, 09h10
  3. [XL-2007] Erreur 1004 lors de l'execution d'une Macro
    Par skipeemed dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/10/2010, 13h05
  4. Réponses: 2
    Dernier message: 15/02/2008, 09h24
  5. [VBA-E]Erreur lors de la copy d'une feuille
    Par nattyman dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/08/2006, 14h30

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