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 d'exécution 1004 lorsque ma BD Access est ouverte


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2013
    Messages : 46
    Points : 40
    Points
    40
    Par défaut Erreur d'exécution 1004 lorsque ma BD Access est ouverte
    Bonjour,

    J'ai une base de données access et j'ai un fichier Excel qui contient un tableau lié à une requête qui existe sous Access. J'ai utilisé Connexion à partir D'Access.

    Lorsque j'ouvre mon fichier Excel, j'exécute ce 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
    Option Explicit
     
    Private Sub Workbook_Open()
    Application.ScreenUpdating = False
    Worksheets("FTemps").Activate
    Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False
     
     
    Dim Lg&, i%, x%
        Application.ScreenUpdating = False
        Lg = Range("a" & Rows.Count).End(xlUp).Row
        Range("x2:x" & Lg) = "x"
        '--- tri colonne A ---
        Range("a2:b" & Lg).Sort _
            Key1:=Range("a2"), Order1:=xlAscending, _
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
        '---
        For i = 2 To Lg
            If Cells(i + 1, "a") = Cells(i, "a") Then
                x = i
                Do While Cells(x + 1, "a") = Cells(i, "a")
                   Cells(i, "g") = Cells(i, "g") & " | " & Cells(x + 1, "g")
                   Cells(x + 1, "x").ClearContents
                   x = x + 1
                Loop
     
                i = x
            End If
     
        Next i
     
     
            On Error Resume Next
     
     
    For i = Lg To 2 Step -1
         Cells(i, "g") = Cells(i, "g") & " | " & Cells(i, "h")
        If Worksheets("FTemps").Cells(i, 24) = "" Then Worksheets("FTemps").Rows(i).Delete
     
    Next i
     
        Columns("x").ClearContents
     
    TrierDate
     
     
        Worksheets("Réel par projet").PivotTables("Tableau croisé dynamique1").PivotCache.Refresh
     
    Worksheets("Réel par projet").Activate
     
    End Sub
    Cette erreur survient sur la ligne 6 (Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False)
    Seulement lorsque ma BD Access est ouverte.

    Avec ce fichier Excel, je ne fais rien d'autre, je veux seulement qu'il aille chercher mes données et après fini plus aucune mise à jour via ma BD Access.

    Je dois absolument être capable de travailler avec Access et mon fichier Excel en même temps.

    Lorsque je fais le contraire, donc j'ai mon fichier Excel ouvert et que j'ouvre ma BD Access, j'ai une erreur 3027 - Mise à jour impossible. La base de donnée ou l'objet est en lecture seule. Je ne peux plus écrire dans ma BD Access parce que mon fichier Excel liée avec une requête Access est ouvert.

    Merci de m'aider pour remédier à ce problème.

    En espérant avoir été claire.

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour,
    Par défaut, les bases créées sous ACCESS sont en mode exclusif; donc la base ne peut être ouverte que par 1 utilisateur.
    avant de créer une connexion dans excel, il faut dans ACCESS modifier les option. menu Access>option>avancé. tu referme ACCESS pour que la base prenne en compte les modification, puis tu la ré-ouvre.
    et enfin tout en laissant ACCESS ouvert tu attribut ta connexion à EXCEL.
    Images attachées Images attachées  

  3. #3
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2013
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    Merci ! Ça fonctionne. Ma base de donnée était déjà en mode Partagé mais j'ai décoché l'option Ouvrir avec Enregistrements verrouillés.

    Résolu!

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

Discussions similaires

  1. remplissage zone de liste (Combobox) : Erreur d'exécution 1004 !?
    Par ln0331 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/02/2008, 17h02
  2. Réponses: 13
    Dernier message: 29/06/2007, 18h03
  3. Erreur d'exécution '1004' lors d'une mise en page
    Par alex.a dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/06/2007, 09h00
  4. [VBA-E] Erreur d'exécution '1004'
    Par bibi5883 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/03/2007, 14h31
  5. [VBA-E] erreur d'exécution 1004 ?
    Par toy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/05/2006, 13h15

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