Bonjour tout le monde
Je suis sur un noeud. Je ne comprends pas et je n'arrive pas à fermer un fichier Excel à distance.
J'ai recherché sur le forum:
https://www.developpez.net/forums/d2...ouvert-module/
J'ai essayé avec toutes les explications, rien y fait ... le fichier reste ouvert.
https://stackoverflow.com/questions/...se-not-working
J'ai également essayé ce qui est expliqué ici ... même résultat: le fichier reste ouvert
J'explique mon problème:
A - Description:
Dans l'entreprise, il y a différentes unitées. Chaque unité possède un nom (et donc, un fichier Excel existe sous ce nom)
Il y a un fichier de configuration (Setup_UMP.xslm), qui contient toutes les données qui permettent de remplir le fichier d'unité
Les valeurs à recopier pouvant être différentes entre chaque unité.
B - Fonctionnement:
Lorsqu'un utilisateur ouvre son fichier, le système ouvre le fichier de configuration.
Si la date de la dernière mise à jour du fichier "utilisateur" est la même que la date de la dernière sauvegarde du fichier de "configuration", je ferme le fichier de config (rien à faire).
Si ces dates sont différentes, alors, le fichier de config reste ouvert, la macro remet à jours les données, enregistre la date de sauvegarde du fichier de config.
Pour terminer, fermeture du fichier de configuration.
C'est la théorie
En pratique, la fermeture du fichier de configuration ne s'éffectue pas. Il reste en arrière plan et visible.
Pas de message d'erreur ... rien. Il reste ouvert !
J'ai regardé dans tous les sens ... rien
Le code est ci-dessous
Ce code se trouve dans l'évènement "Workbook Open" du fichier utilisateur
Rien ne fonctionne. Aucune erreur et le fichier reste ouvert !
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
18
19
20
21
22
23
24
25
26
27
28
29
30Dim wb As Workbook ' La variable "SharePoint" contient l'URL qui pointe vers les fichiers Excel - https://..... fichier_setup_UMP = SharePoint & "Setup_UMP.xlsm" ' Nom du fichier à ouvrir (se trouve dans SharePoint Version 365) Workbooks.Open Filename:=fichier_setup_UMP Workbooks("Setup_UMP.xlsm").Activate Set wb = ActiveWorkbook ... ' Ici se trouve le traitement que la macro doit éffectuer ' Les essais ci-dessous proviennent de différents forum dont le votre ' code d'essai n° 1: wb.activate wb.Close SaveChanges:=False ' Code d'essai n° 2: Application.Windows("Setup_UMP.xlsm").Activate wb.Close SaveChanges:=False ' Code d'essai n° 3: wb.Activate ThisWorkbook.Close SaveChanges:=False ' Code d'essai n° 4: Application.Windows("Setup_UMP.xlsm").Activate Workbooks("Setup_UMP.xlsm").Close SaveChanges:=False
Info: Le fichier de configuration s'ouvre dans la même session d'Excel en local (pas Excel Web version - Les macros ne fonctionnent pas avec cette version)
J'appelle Au secours
Toutes les idées sont les bienvenues
Merci d'avance
Bonne journée
André






Répondre avec citation


et si celle-ci est pertinente pensez à voter 



Partager