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 :

problème fermeture application ontime [XL-2002]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 58
    Points
    58
    Par défaut problème fermeture application ontime
    bonjour
    petit problème bien embêtant
    j'ai un module qui permet d'enregistrer un fichier toutes les 10min et un enregistrement finale à la fermeture
    le problème : quand le fichier est fermé , il s'ouvre automatiquement toutes les 10min , à mon avis il manque un arrêt de l'application à la fermeture
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Sub test()
    Debug.Print Now
    Application.OnTime DateAdd("N", 1, Now), "test"
    ActiveWorkbook.Save
    End Sub
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ActiveWorkbook.Save
    End Sub
     
    Private Sub Workbook_Open()
    Application.OnTime DateAdd("N", 1, Now), "test"
    End Sub

  2. #2
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut
    C'est a se demander pourquoi prendre du temps pour mettre du code a dispo
    http://www.developpez.net/forums/d87...e-nvl-donnees/
    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 58
    Points
    58
    Par défaut probleme application ontime
    bonjour
    excuse moi
    c'est vrai que tu as bien travaillé, sans des gens comme toi ,je n'arriverais pas à faire grand chose en vba
    mais j'étais parti sur mon idée et voulu aller trop vite
    merci pour tout

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 58
    Points
    58
    Par défaut probleme application ontime
    bonjour
    serai-t-il quand même possible d'essayer de terminer avec mon code
    merci

  5. #5
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Comme je te l'ai expliqué dans l'autre poste, ton probleme vient du fait qur Ontime, visiblement, persiste même après la fermeture du document, et lors de son déclenchement, il r'ouvre le fichier pour pouvoir executer la procedure qui lui est lié.
    Afin d'éviter ca, j'avais rajouté ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    'On detruit les programmations
    Application.OnTime ModUsed.Lheure, "SayBeepBeep", , False
    Application.OnTime ModUsed.LClose, "SaveAndClose", , False
    End Sub
    Qui permet d'annuler une programmation, mais pour se faire il faut que tu garde l'heure exact que tu as indiqué lors du 1er appelle a OnTime.

    Donc dans ton cas il faut que tu déclare une variable a porté module de type date.
    Avant de faire appelle a OnTime tu renseigne cette variable puis tu appelles OnTime comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Public HeureSave as Date
     
    Public Sub test()
    Debug.Print Now
    HeureSave = DateAdd("N", 1, Now)
    Application.OnTime HeureSave , "test"
    ActiveWorkbook.Save
    End Sub
    et donc avant que ton classeur ne se ferme tu annules la dernière programmation.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    'On detruit les programmations
    Application.OnTime HeureSave, "test", , False
    End Sub
    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 58
    Points
    58
    Par défaut probleme application ontime
    bonjour
    ça a l'air de fonctionner
    et comme je voudrai un enregistrement à la fermeture , je suppose que je rajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    activeworkbook.save
    On Error Resume Next
    Application.OnTime HeureSave, "test", , False
    End Sub
    merci

  7. #7
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Oui, ca devrait le faire
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 110
    Points : 58
    Points
    58
    Par défaut probleme application ontime
    bonjour
    chez moi ça marchait bien ,mais au travail , le fichier continue à s'ouvrir tout seul ou il n'enregistre plus .
    suite à un conseil d'expérience d'une personne , ne pas enregistrer automatiquement : si une personne fait une grosse erreur sur le fichier et qu'il se met à enregistrer auto , tout est perdu
    donc je vais plutôt me diriger sur ton système avec minuterie qui se met en marche à partir de l'ouverture du fichier ou d'un enregistrement manuel ou après action de l'userform et qui déclenche un userform type un bouton enregistrement manuel et un autre (unload me)
    et qui s'arrête à la fermeture du fichier
    en décortiquant tes codes , j'ai du mal à comprendre la minuterie ,la macro bloque sur FBase.[D35]
    merci

  9. #9
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut
    A mon avis vu l'utilisation que tu veux en faire, tu devrais regarder du coté des Macro complémentaire. Tu as une macro toute faite qui permet d'enregistrer a intervalles réguliers avec apparition d'un message box.

    Je vais quand même répondre pour FBase[B35], ça correspond a la valeur contenu dans la cellule B35 de la feuille dont le nom(VBA) est FBase.

    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

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

Discussions similaires

  1. [XL-2007] Problème avec Application.ontime
    Par XceSs dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/05/2012, 02h05
  2. [XL-2002] Problème avec Application.OnTime Now() + TimeValue
    Par coklin dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/08/2009, 14h15
  3. problème fermeture application Access
    Par darkspoilt dans le forum VBA Access
    Réponses: 9
    Dernier message: 30/11/2007, 20h27
  4. Problème avec Application.OnTime
    Par Uopip dans le forum VBA Outlook
    Réponses: 14
    Dernier message: 09/07/2007, 15h14
  5. [VB6]problème fermeture application
    Par pimousse_cerise dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/04/2006, 11h24

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