Macros et fermeture automatique

Fermé
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020 - 4 févr. 2020 à 21:22
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020 - 5 févr. 2020 à 18:16
Bonjour,

Je n'ai jamais utiliser de Macros dans Excel.
Au travail nous avons excel 2016 et nous avons un fichier qui est partagé entre plusieurs départements qui peuvent consulter et ajouter des données dans le fichier. Malheureusement, plusieurs ne le ferme pas et nous avons comme solution de faire une fermeture automatique.
J'aimerais donc faire qu'après un moment :
1-Un avertissement de fermeture imminente dans 1 minute avec la mention "Veuillez enregistrer"
2-Une fermeture automatique du fichier.
Comment faire ?
La seule chose que je n'ai pas faites sur excel c'est les macros.

6 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
5 févr. 2020 à 09:16
1
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 14:25
bonjour, ce dossier n'indique rien autre que
"Les délais peuvnt êtres modifiés dans le module1
Les variables Tempo1 et Tempo2, des commentaires y sont ajoutés.
Le message d'information n'est affiché qu'après que le classeur soit rester inactif pendant le temps déterminer par Tempo1
Après le message d'alerte, le classeur est sauver et fermer après le temps déterminer par Tempo2
Une action quelconque et à n'importe quel moment remet les compteurs à zéro.
Si le processus à été arrêté vous pouvez le relancer avec la sub Test sur le Module1 (commentaire ajouter)
ATTENTION : Quand vous modifiez du code tout les processus sont stoper. Il faut relancer"

Mais aucunement la façon de faire, je ne sais même pas comment aller modifier le tout
0
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 14:39
J'ai réussi à le mettre, mais j'ai un message d'erreur pour une variable non définie UFMessage.Show .
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728 > simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
Modifié le 5 févr. 2020 à 15:02
Je n'ai pas ce problème

corriger comme cela à cet endroit:

'Pour les tests.. ensuite supprimer le Stop et les apostrophes.
                        'Stop
                        ThisWorkbook.Save
                        ThisWorkbook.Close>


Bien suivre les instructions!

a lire pour mieux comprendre le vba

https://silkyroad.developpez.com/VBA/DebuterMacros/#LI

https://silkyroad.developpez.com/VBA/DebuterMacros/#LII-B-3-d

@+ Le Pivert
0
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 16:31
Cette étape a été faite, maintenant il me fait le message suivant quand je transfère le tout dans mon fichier
"Erreur de compilation :
Des constantes, chaîne de longueur fixe, tableaux, types définis par l'utilisateur et instructions Declare ne sont pas autorisés comme membres Public de modules d'objet"

Bref le fichier original marche si je veux transcrire dans mon fichier ça ne marche pas.
0
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 16:32
bon et maintenant j'ai la variable Tempo qui n'est pas défini comme message d'erreur
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
5 févr. 2020 à 16:56
Je viens de faire la copie sur un classeur xlsm (2007 comprenant des macros), le classeur original étant en xls (2003)
C'est réussi cela fonctionne.

Donc tout d'abord il faut que ton classeur soir en xlsm.

Ensuite faire un point d'arrét le temps des copies

Les macros se trouvent dans ThisWorkbook

Dans l'UserForm (ne pas oublier de renommer cet userform)

Et dans le module

T’arrêtes le point d’arrêt et tu fermes en enregistrant

Si tu veux le classeur que je viens de faire?

Voilà

@ + Le Pivert
0
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
Modifié le 5 févr. 2020 à 17:26
J'ai résolu le problème, me reste juste à ce qu'il s'exécute automatiquement, j'ai écrit la formule
Private Sub Workbook_Open()
Code
End Sub

Sans succès

Sinon je n'ai pas trouvé comment modifier le message avec plusieurs erreurs d'orthographe je l'ai donc retiré.

Merci pour tout
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
5 févr. 2020 à 17:37
Voir ceci pour Private Sub Workbook_Open()

https://www.excel-pratique.com/fr/vba/evenements_classeur

@+ Le Pivert
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 17:56
Salut, d'accord je sais où inscrire le début du code, mais je fais comment pour qu'il active le Module 1 ?
0
simonst87 Messages postés 8 Date d'inscription mardi 4 février 2020 Statut Membre Dernière intervention 5 février 2020
5 févr. 2020 à 18:16
J'ai trouvé la solution !!!!
Merci pour l'aide
0