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

Windows Discussion :

Macro pour enregistrement double


Sujet :

Windows

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Points : 46
    Points
    46
    Par défaut Macro pour enregistrement double
    Bonjour à tous

    Quand j’enregistre mes données (Word ? Excel Access etc), par sécurité après les avoir enregistrées une première fois sur mon disque dur C, je le fais une seconde fois sur un disque externe H

    Je voudrais savoir s'il est possible (et si oui comment) de faire une macro pour que la sauvegarde se fasse automatiquement sur les 2 disques C et H en même temps.

    Quelqu’un pourrait-il me conseiller ?

    Merci

  2. #2
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Quand tu dis en même temps, c'est quoi?
    Au même moment ou tu sauvegardes, au moment ou tu fermes ton document, au moment ou tu arrêtes ta session?

    En fonction, je te propose plusieurs pistes.

    1- Quand tu sauvegardes, pour les documents Office, tu peux regarder ce document sur les sauvegardes et la méthode saveashttp://heureuxoli.developpez.com/off...e=page3#L3-C-1.

    2 - Quand tu fermes ton document, utilises la méthode saveas dans la routine Sub Document_Close().

    3 - Quand tu arretes ton document, lancer une tache de synchronisation du dossier (disque H) sur le dossier (disque C) en Batch.

    Pour les deux premières méthodes, tu peux aussi demander de l'aide dans les forums Office.

    Cordialement,
    Christophe
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Points : 46
    Points
    46
    Par défaut
    Quand tu dis en même temps, c'est quoi?
    >>au moment où j'enregistre

    ex : je suis dans un doc Word et j'ai terminé de travailler :

    au lieu de l'enregistrer comme d'habitude sur mon disque C

    >>je voudrais que cela enregistre à la fois sur C et sur H ou d'abord sur C puis ensuite sur H

    >>Faut-il utiliser "Visual Basic" ou "Visual Studio" pour ce que tu proposes ?

  4. #4
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    C'est VisualBasic et en version VBA, tu peux regarder dans Word du coté des macros.
    Voici le code qu'il faut que tu incorpores dans ton document.
    Il ne te reste qu'à changer le nom de ton fichier (Mon_fichier.docm) et le chemin ("C:\Users\Christophe\Desktop\") ou tu veux sauvegarder.

    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
    Dim WithEvents oWdApp As Word.Application
     
    Sub Document_Open()
     
    Set oWdApp = Word.Application
     
    End Sub
     
    Sub oWdApp_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
     
     ChangeFileOpenDirectory "C:\Users\Christophe\Desktop\"
        ActiveDocument.SaveAs FileName:="Mon_fichier.docm", FileFormat:= _
            wdFormatXMLDocumentMacroEnabled, LockComments:=False, Password:="", _
            AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
            EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
            :=False, SaveAsAOCELetter:=False
    End Sub
    Tiens nous au courant mais ca devrait être bon.
    Vérifie que les macros sont autoriséés.
    Cordialement,
    Christophe
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Points : 46
    Points
    46
    Par défaut
    Merci Carden

    J'ai plusieurs questions :

    VisualBasic et en version VBA
    >>Que veux-tu dire ?

    Visual Basic et VBA sont deux logiciels différents...

    >>J'ai téléchargé Visual Basic 10 est-ce que je peux y taper ce code source ?

    >>Est-ce que cette macro fonctionne automatiquement à la fermeture de mon document ou à l'enregistrement ?

    >>Je ne comprends pas bien : mon fichier est chaque fois différent dans Word quand je l'entegistre alors que dans ton code : "(Mon_fichier.docm)" ne concerne qu'un seul fichier

    >> je vois bien dans ton code la présence du disque C mais pas celle du disque H...or mon pb est bien celui-là : enregistrer dans 2 disques différents en même temps

    >>Si en plus de Word, je désire faire la même chose pour Excel et Access comment faut-il modifier le code source dans ce sens ?

  6. #6
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Oui effectivement il y a des distinctions entre VB et VBA.
    Le VBA, c'est les macros Word, Excel ou Access. (Alt + F11) dans ces logiciels pour y accédes.

    VOici la version corrigée pour enregistrer sur le disque H.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub oWdApp_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
     
    
     ChangeFileOpenDirectory "H:\Users\tof\Documents\Crem\"
        ActiveDocument.SaveAs FileName:=Doc.name, FileFormat:= _
            wdFormatXMLDocumentMacroEnabled, LockComments:=False, Password:="", _
            AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
            EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
            :=False, SaveAsAOCELetter:=False
    End Sub
    Attention, il faut bien sûr les droits d'écriture sur ce second disque.
    Pour Excel, il s'agit de ActiveWorkbook.saveas

    Cordialement,
    Christophe
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Points : 46
    Points
    46
    Par défaut
    Merci pour ta patience

    Excuse moi si je me répète mais étant néophyte je cherche à bien comprendre :

    1>>J'ai téléchargé Visual Basic 10, est-ce que je peux y taper ce code source ou n’est-il qu’une VBA ?
    (En effet tu m’indiques que la macro en question est une VBA mais est-ce qu’une telle macro peut fonctionner avec Visual Basic ?)

    2>>Est-ce que cette macro fonctionne automatiquement à la fermeture de mon document ou à l'enregistrement ?

    3>>Au sujet des disques C et H : apparemment ta 1° macro correspondait à l’enregistrement sur le C et ta seconde sur le H.
    Mais est-il possible de créer une SEULE macro qui enregistre automatiquement le document sur les 2 disques en même temps ( H et C) ou l’un après l’autre ?

  8. #8
    Membre expert

    Homme Profil pro
    Spécialiste progiciel
    Inscrit en
    Février 2010
    Messages
    1 747
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Spécialiste progiciel
    Secteur : Service public

    Informations forums :
    Inscription : Février 2010
    Messages : 1 747
    Points : 3 016
    Points
    3 016
    Par défaut
    Bonjour,

    Il te faut la placer dans Word en VBA.
    Je ne pense pas que dans VB cela fonctionne, tu peux tester au cas où.

    Elle fonctionne à l'enregistrement (BeforeSave).

    Elle permet de sauvegarder ton document à la fois à son emplacement actuel plus un second emplacement (sur le disque de ton choix).

    Cordialement,
    Christophe
    Cordialement,
    Christophe

    Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche

Discussions similaires

  1. création macro pour enregistrer code VBA
    Par Solenne86 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2009, 04h00
  2. Crée macro pour enregistrer en fichier .csv
    Par jonki dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2008, 14h24
  3. Réponses: 12
    Dernier message: 31/07/2007, 15h21
  4. [VB] macro pour enregistrer sous
    Par CélineM dans le forum SDK
    Réponses: 1
    Dernier message: 07/06/2007, 12h28
  5. macro pour enregistrer sous
    Par macromega dans le forum Général VBA
    Réponses: 2
    Dernier message: 03/05/2007, 19h17

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