Bonsoir,
En VBA, est-il possible d'afficher le poids d'un fichier dans la barre d'état avec mise à jour à chaque enregistrement ?
Cdt,
Etorria
Bonsoir,
En VBA, est-il possible d'afficher le poids d'un fichier dans la barre d'état avec mise à jour à chaque enregistrement ?
Cdt,
Etorria
Soir Bon,inutile de multi poster sur différents forums, sinon dans l'aide en ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Application.StatusBar = FileLen(ThisWorkbook.Name) & " Octets"
bonsoir
voila ce que j'ai trouvé :
il faut bien sûr lancer cette procédure après un enregistrement que tu peux contrôler en incluant cette commande dans une procédure Auto_Open() par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Sub Taille() Application.StatusBar = "Taille initiale de ce classeur en octets = " & FileLen(ActiveWorkbook.FullName) End Sub
dans ce cas il faut gérer l'enregistrement dans la procédure Taille() par un code du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Application.CommandBars("Worksheet Menu Bar"). _ Controls("Fichier").Controls("Enregistrer").OnAction = "Taille"
avant l'affichage dans la barre de statuts.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fichier = ActiveWorkbook.FullName ActiveWorkbook.SaveAs Filename:= Fichier, FileFormat _ :=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _ False, CreateBackup:=False
A plus
Bonjour
Attention qu'il est parfois très gênant pour l'utilisateur que son classeur ait été enregistré à son insu.
Dans le code de Le Pierre, le classeur est enregistré à seules fins de pouvoir en afficher la taille correcte. Si, après, l'utilisateur veut fermer son classeur sans l'enregistrer pour pouvoir le retrouver comme il était à l'ouverture, il va la trouver mauvaise...
Je pense par exemple à un utilisateur qui supprime un (des) onglet(s), puis qui se dit "Oups, j'aurais pas dû". Il ferme sans enregistrer dans l'espoir de retrouver ses onglets et ...
Donc, prudence avec ce genre de code.
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
---------------
Mes billets de blog sur DVP
Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
---------------
bonjour
l'enregistrement ne se fait pas à l'insu de l'utilisateur mais uniquement lorsque celui-ci utilise la commande Fichier / Enregistrer !
Il y a bien une action volontaire de l'utilisateur.
Si toutefois l'utilisateur veut enregistrer sous un autre nom (Enregistrer sous ...) la procédure n'est pas interceptée.
A plus
Bonjour Le Pierre,
Je ne suis pas tout à fait d'accord avec toi.
Le code que tu donnes, à savoir
enregistre le fichier, sans qu'il soit besoin pour l'utilisateur de cliquer sur Fichier/Enregistrer sous..., puisque justement ce code remplace l'action sur le menu...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fichier = ActiveWorkbook.FullName ActiveWorkbook.SaveAs Filename:= Fichier, FileFormat _ :=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _ False, CreateBackup:=False
Par contre, où je suis d'accord avec toi, c'est que l'utilisateur doit confirmer le remplacement du fichier... Il est donc averti...
Je reste toutefois partisan d'un code qui ne demande pas à brûle-pourpoint un enregistrement de fichier, mais qui afficherait explicitement dans la barre d'état que la taille est celle du fichier lors du dernier enregistrement.
Chacun sa méthode...
Bonne journée
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
---------------
Mes billets de blog sur DVP
Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
---------------
Merci Pierre de tes conseils très intéressant !
Etorria
Partager