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

OpenOffice & LibreOffice Discussion :

Macro pour enregistrer le classeur actif


Sujet :

OpenOffice & LibreOffice

  1. #1
    Membre à l'essai
    Macro pour enregistrer le classeur actif
    Bonjour,
    Je souhaiterais faire en sorte que le classeur actif soit enregistré automatiquement à partir du moment où l'utilisateur active au choix le menu Fichier/Quitter, ou Fichier/Fermer ou encore clique sur la croix de fermeture de l'application et/ou du classeur actif. Merci par avance.
    Bien sincèrement
    Fanolito

  2. #2
    Expert confirmé
    Bonjour,

    C'est une très mauvaise idée !
    On ne pourrait plus consulter le fichier sans provoquer l'enregistrement, avec tous les risques que cela comporte.

    Quel est exactement le but recherché ?
    Cordialement,
    Patrice
    Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.

    Pour dire merci, cliquer sur et quand la discussion est finie, penser à cliquer sur

  3. #3
    Membre à l'essai
    Citation Envoyé par Patrice740 Voir le message
    Bonjour,

    C'est une très mauvaise idée !
    On ne pourrait plus consulter le fichier sans provoquer l'enregistrement, avec tous les risques que cela comporte.

    Quel est exactement le but recherché ?
    Bonjour Patrice et merci pour votre retour,
    En fait, j'ai mis à disposition, de 2 utilisateurs, un classeur dont le contenu évolue au fur et à mesure. Je pense que l'un des 2 utilisateurs ne réalise pas de sauvegarde au moment de quitter LibreOffice ou au moment de fermer le classeur.
    Je précise que ces 2 utilisateurs n'utilisent pas d'autres classeurs que celui que je leur ai mis à disposition. C'est pourquoi, je pensais faire un enregistrement de façon automatique dés qu'une demande de fermeture était formulée (que ce sois quand on quitte LibreOffice ou que l'on ferme le classeur).
    Merci par avance
    Fanolito

  4. #4
    Expert confirmé
    Re,

    Lorsqu'on a modifié le contenu d'un classeur et, qu'on le ferme ou qu'on ferme l'application, celle-ci demande systématiquement si on veut enregistrer le classeur.
    Refuser cet enregistrement est donc une volonté délibérée de l'utilisateur.

    Je pense qu'il faut la conserver, ne serait-ce que pour protéger les informations d'origine lorsqu'on a fait une erreur ou une mauvaise manipulation.
    Cordialement,
    Patrice
    Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.

    Pour dire merci, cliquer sur et quand la discussion est finie, penser à cliquer sur

  5. #5
    Membre à l'essai
    Citation Envoyé par Patrice740 Voir le message
    Re,

    Lorsqu'on a modifié le contenu d'un classeur et, qu'on le ferme ou qu'on ferme l'application, celle-ci demande systématiquement si on veut enregistrer le classeur.
    Refuser cet enregistrement est donc une volonté délibérée de l'utilisateur.

    Je pense qu'il faut la conserver, ne serait-ce que pour protéger les informations d'origine lorsqu'on a fait une erreur ou une mauvaise manipulation.
    Je suis tout a fait d'accord avec vous mais dans le cas présent il s'agit d'une erreur de manipulation ou d’inattention. Chaque modification de ce classeur se doit d'être systématiquement enregistrée.
    C'est la raison pour laquelle je tiens absolument à faire un enregistrement automatique. Pouvez-vous m'aider dans cette démarche ?
    Bien sincèrement.
    Fanolito

  6. #6
    Expert confirmé
    Bonjour,
    Citation Envoyé par Fanolito Voir le message
    dans le cas présent il s'agit d'une erreur de manipulation ou d’inattention....
    ... je tiens absolument à faire un enregistrement automatique. Pouvez-vous m'aider dans cette démarche ?
    Fanolito
    Désolé mais, je me refuse à proposer une solution contraire à mes principes :
    Il ne s'agit pas d'une erreur de manipulation, comme dit précédemment : Refuser l'enregistrement est une volonté délibérée de l'utilisateur.
    Autant je pense, qu'une application doit être conçue pour limiter au maximum les risques d'erreur, autant je pense qu'il est impératif de responsabiliser les utilisateurs et de leur laisser assumer les conséquences de leurs choix.
    Cordialement,
    Patrice
    Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.

    Pour dire merci, cliquer sur et quand la discussion est finie, penser à cliquer sur

  7. #7
    Membre habitué
    Macro pour enregistrer le classeur actif
    Bonjour, à chacun ses principes......

    Désolé mais, je me refuse à proposer une solution contraire à mes principes :
    Ce forum est avant tout d'aider les gens.

    Pour enregistrer le document automatiquement à sa fermeture, il suffit d'y insérer cette macro:

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Enregistrement
    ThisComponent.store
    End Sub


    Ensuite depuis le document il faut cliquer sur Affichage/Barre outils/Personnaliser. Sur la boite qui s'affiche il faut cliquet sur l'onglet "Événements". Sélectionner "le document va être fermé". Cliquer sur le bouton "Macro et aller chercher la macro en question. Dès la fermeture le document s'enregistrera (modification faite ou non) avec les désagréments possibles comme le dit Patrice740.

    Voilà
    Libre Office Version: 6.3.4.2 (x64)
    Windows 10

  8. #8
    Membre à l'essai
    Citation Envoyé par Patrice740 Voir le message

    Bonjour Patrice,
    Je vous remercie d'avoir consacré un peu de votre temps pour me répondre.
    Bien sincèrement

    Citation Envoyé par Mobydick_62 Voir le message

    Bonjour Mobydick_62,
    Un grand merci pour votre aide.
    J'ai testé la macro et ça fonctionne à merveille à condition que seul le classeur concerné soit ouvert. C'est logique, c'était ma demande initiale.
    Toutefois, je ne peux pas être sûr à 100% que les utilisateurs n'ouvrirons pas un tout autre document dans LibreOffice !
    Comment faire pour identifier le classeur concerné et faire en sorte que seul celui-ci sera fermé et enregistré.
    En fait, de ce que j'ai testé, il faudrait activer le classeur concerné puis exécuté la macro que vous m'avez fournie mais je ne sais pas comment y parvenir.
    Par avance, merci.
    Bien sincèrement.

  9. #9
    Membre habitué
    Macro pour enregistrer le classeur actif
    Bonjour.
    Je ne comprends pas trop ta question. Où à tu mis ta macro ?
    1- Dans "Mes macros" de LibreOffice ?
    2- Dans les macros du document en question ?

    Si c'est dans 1, là effectivement cette macro s'exécutera sur le document actif quel qu'il soit (calc, writer....). Donc là c'est plus délicat il et faudra biaiser.
    Si c'est dans 2, la macro s'exécutera qu'avec ce document et lui seul.

    Cordialement
    Libre Office Version: 6.3.4.2 (x64)
    Windows 10

  10. #10
    Membre à l'essai
    Bonjour Mobydick_62,
    Désolé d'avoir tardé à te répondre.
    J'ai placé ma macro dans une bibliothèque personnelle.
    Mais je pourrais effectivement la placer dans les macros du document en question.
    Il faut que je teste ça.
    Merci en tous cas pour ton retour.
    Bien sincèrement.

  11. #11
    Membre à l'essai
    Bonjour Mobydick_62,
    Après une absence prolongée je reviens vers toi pour te dire que j'ai effectivement placé
    ma macro dans le classeur concerné et tout fonctionne comme je le souhaitais.
    Merci à toi.
    Bien sincèrement.
    Fanolito

###raw>template_hook.ano_emploi###