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

VBA Access Discussion :

erreur 70 permission refusée


Sujet :

VBA Access

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut erreur 70 permission refusée
    Salut cher Programmeur,
    Je reviens vous expliquer mon problème sur le message d’erreur qui s’afficher « Erreur 70 Permission refusé ».
    Je vous explique mon idée.
    Je voulais à travers DROPBOX sauvegarder ma base dorsale (la base qui comporte les tables). Comme vous me l’avez conseillé, à chaque création d’une application, je fais la séparation de ma base.
    Maintenant, je me suis dit s’il n’était pas possible de faire une sauvegarde de ma base dorsale sur DROPBOX installé dans la machine. Cela va me permettre de faire une récupération de mes données si toute fois un problème survenait.
    Voici le chemin de sauvegarde de ma base de données : D:\Save_Data\Data.accdb
    Maintenant à chaque fois à la fermeture de l’application, je fais la copie de la base nommé « DATA » dans un dossier que j’ai crée sur le dossier DROPBOX.
    Voici le chemin : C:\Users\User\Dropbox\Save_Data\UpDateData.accdb
    Je fais la copie avec le code suivant :
    1_ J’ai crée une fonction
    Function CopierBaseExterne()
    FileCopy " D:\Save_Data\Data.accdb ", " C:\Users\User\Dropbox\Save_Data\UpDateData.accdb "
    End Function

    2_ Appelé la fonction
    A la fermeture de l’application j’utilise : Call CopierBaseExterne
    C’est la bas maintenant le problème ou bien le message d’erreur n°70 s’affiche : « Permission refusé ».

    Si tu a une idée pour moi sa sera la bien venu.
    Merci d’avance

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Tant que la frontale est ouverte, Access va refuser de copier la dorsale. (Ton message d’erreur actuel.)
    Tu dois externaliser la copie.
    Une idée.
    Crée-toi une petite db avec le code de copie de ta dorsale.
    Dans cette db, une macro AutoExec qui :
    - exécute le code
    - et qui se referme.

    À la fermeture de ta frontale, tu provoques l’ouverture de cette db, qui fera le boulot et se refermera immédiatement.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonjour,

    Tu peux également au moment de la fermeture, supprimer les attachements, faire la copie puis rattacher soit en suivant soit au démarrage.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 438
    Points : 43 081
    Points
    43 081
    Par défaut
    Loufab,

    Pourquoi t'as pas donné un lien sur ton tuto ?

    http://loufab.developpez.com/tutorie...rage_msaccess/
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonne remarque !

    Parce que le fonctionnement souhaité n'est pas le même.

    Rayan a sa bdd en local et veux la copier sur le cloud pour la sauvegarder.

    Mon tuto détaille une solution de partage sur cloud ou la bdd est déjà sur le cloud. C'est totalement différent.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut Débutant
    Merci
    Pour votre aide mais malheureusement je suis un débutant donc j'ai tenté de suivre à la lettre pour la conception mais je suis perdu.
    Ou bien si quelqu'un pouvais faire la pratique ainsi je serai plus situer quand je l'aurai
    merci d'avance

  7. #7
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Pas de souci, on a tous été un débutant !


    Voici un exemple.

    On crée une nouvelle Application.
    On l’appelle DBSauvegarde.mdb.
    On la loge dans le même répertoire que la dorsale.
    Dans un module, ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Compare Database
    Option Explicit
     
     
    Public Function Sauvegarde()
      'Copier la dorsale, là où tu veux
      FileCopy "D:\Save_Data\Data.accdb", "C:\Users\User\Dropbox\Save_Data\UpDateData.accdb"
      'Refermer la DB
      Quit
    End Function
    Et une macro appelée Autoexec. Comme son nom l’indique, elle va se déclencher automatiquement à chaque ouverture de la dB




    Donc si on double-clique sur le fichier, l’application va :
    - s’ouvrir ;
    - copier ta dorsale ;
    et se refermer immédiatement.
    Tu n’auras pas le temps de t’en rendre compte.

    Pour l’ouvrir sans déclencher le code :
    - un clic sur le nom du fichier, pour le mettre en surbrillance ;
    - enfoncer la touche Majuscules et double-cliquer.

    Elle s'ouvre alors sans exécuter la macro... et tu peux alors explorer son contenu.

    -------
    Dans un formulaire de ta Frontale, un bouton :





    Avec ce code associé au clic du bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Option Compare Database
    Option Explicit
     
    Private Sub btSauvegarde_Click()
      'Ouvrir la DBSauvegarde.mdb
      Shell "Explorer /root," & CurrentProject.Path & "\DBSauvegarde.mdb", vbNormalFocus
      'Fermer la frontale
      Quit
    End Sub
    « Shell "Explorer /root," & CurrentProject.Path & "\DBSauvegarde.mdb", vbNormalFocus »

    Traduction en français :
    « Exécuter le programme Explorer avec le fichier appelé DBSauvegarde.mdb qui se trouve dans le même répertoire que cette db. »
    (L'équivalent d'un double-clic sur le fichier.)

    N.B. J'utilise une version Access2000. Chez toi, l'extension « .mdb .accdb ».
    Fichiers attachés Fichiers attachés
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  8. #8
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Pour éviter l'erreur 70 et copier la base dorsale même en cours d'utilisation, il faut user de l'APi SHFileOperation

    Code déclaration : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Private Type SH_FILE_OPSTRUCT
        hWnd                                                   As Long
        wFunc                                              As Long
        pFrom                                              As String
        pTo                                                As String
        fFlags                                             As Integer
        fAborted                                           As Boolean
        hNameMaps                                          As Long
        sProgress                                          As String
    End Type
     
    Private Const FOP_COPY                                  As Long = &H2
    Private Const FOP_NOCONFIRMATION                       As Long = &H10
    Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SH_FILE_OPSTRUCT) As Long

    Code fonction de copie : 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
     
    Public Function CopyCurrentDatabase(ByVal SourceFileName As String, ByVal TargetFilename As String, ByVal NoConfimation As Boolean) As Boolean
    '---------------------------------------------------------------------------
    ' Procedure     : CopyCurrentDatabase
    ' DateTime      : 13/03/2008
    ' Author        : Jean-Philippe AMBROSINO
    ' Purpose       : This Function is used to copy a file even if it's in use
    '...........................................................................
    ' Parameters    : SourceFileName : DB filename
    '                 TargetFilename : Backup filename
    '                 NoConfimation : True = Yes
    '                 ErrDescription = Error message array
     
    ' Return Codes  : Boolean = True if success
    '...........................................................................
    '---------------------------------------------------------------------------
    Dim SHFileOp                                           As SH_FILE_OPSTRUCT
        With SHFileOp
            .wFunc = FOP_COPY
            .pFrom = SourceFileName
            .pTo = TargetFilename
            If NoConfimation Then
                .fFlags = FOP_NOCONFIRMATION
            End If
        End With
        CopyCurrentDatabase = (SHFileOperation(SHFileOp) = 0)
    End Function

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  9. #9
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Merci Jean-Philippe,




    J'ai copié dans ma boîte à outils.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  10. #10
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut
    Vraiment merci je m'y mettre dès maintenant. Mais Argyronet on dirais que pour toi est plus simple mais un peux compliqué pour un débutant. On ne sais où on doit mettre les code.

  11. #11
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut
    ClaudeLeLoup je testé ta méthode c'est vraiment cool. Mais le seul problème c'est que quand tous les formulaires se ferment. Il y à mes documents qui s'ouvre. Je ne c'est pas pourquoi, pourtant j'ai suivi à là lettre.

  12. #12
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Mais le seul problème c'est que quand tous les formulaires se ferment. Il y à mes documents qui s'ouvre
    De quels formulaires et documents parles-tu ?

    Quoi qu'il en soit, préfère la solution de Argyronet , elle est beaucoup plus directe !
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  13. #13
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut
    C'est le dossier mes documents du système d'exploitation qui s'ouvre.

  14. #14
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Tu as probablement fait une faute d'orthographe dans l'adresse d'un fichier => Windows ne le trouve pas et t'ouvre un formulaire pour le chercher.

    Mais utilise la proposition de Argyronet.

    Copie le code qu'il te propose dans un module et remplace dans ton code actuel, l'instruction :

    par ceci celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CopyCurrentDatabase("D:\Save_Data\Data.accdb", "C:\Users\User\Dropbox\Save_Data\UpDateData.accdb",True)
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  15. #15
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2012
    Messages : 195
    Points : 83
    Points
    83
    Par défaut merci
    Salut merci beaucoup pour votre aide. c'est bon maintenant

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

Discussions similaires

  1. Erreur 70: permission refusée. Vérifier type d'une cellule.
    Par c.piette dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 16/04/2015, 09h46
  2. [Toutes versions] Erreur 70 - Permission refusée, en créant un raccourci WshShortcut
    Par Papy Turbo dans le forum VBA Access
    Réponses: 2
    Dernier message: 09/10/2012, 18h57
  3. Erreur SCRIPT70 Permission refusée avec IE9
    Par keskidi dans le forum jQuery
    Réponses: 1
    Dernier message: 17/03/2011, 00h33
  4. [XL-2000] Déprotection VBE & message erreur 70 permission refusée
    Par modus57 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/01/2010, 12h36
  5. Erreur 70, permission refusée, avec ExecScript
    Par mmmxtina dans le forum Access
    Réponses: 0
    Dernier message: 27/05/2009, 11h28

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