Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Workbook_AfterSave

8 réponses
Avatar
Jac
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte et
affiche les feuilles de travail. Donc pas de macro activée, pas de travail.
C'est ce que je veux si non une fonction de calcul chiffres en lettres ne
fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur est
sauvé avec la bonne config pour être réouvert, mais pas pour travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles à
l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là, pas
moyen : si j'intègre l'affichage ou la fermeture au Workbook_BeforeSave ça
ne fonctionne pas correctement : une sauvegarde se refait avant la fin, donc
mon fichier n'est pas comme il faut pour le réouvrir, idem pour la
fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac

8 réponses

Avatar
Philippe.R
Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en cas de
non activation des macros (ni dans le BeforeSave ni dans open) ; la solution
sera donc de rédiger sur la page d'accueil un message invitant
l'utilisateur à fermer le fichier et à à activer les macros à la prochaine
ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte et
affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres en
lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur est
sauvé avec la bonne config pour être réouvert, mais pas pour travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles à
l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là, pas
moyen : si j'intègre l'affichage ou la fermeture au Workbook_BeforeSave ça
ne fonctionne pas correctement : une sauvegarde se refait avant la fin,
donc mon fichier n'est pas comme il faut pour le réouvrir, idem pour la
fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac



Avatar
Patrick BASTARD
Bonjour, *Jac*

Je ne connais pas ce Workbook_After shave.
Ne serait-ce pas plûtot Work bouc after chèvre ?

Bon, ok, je sors...
rofl

--
Bien amicordialement,
P. Bastard

Avant d'imprimer ce mail, ayez une pensée pour les arbres.

Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte
et affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres
en lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur
est sauvé avec la bonne config pour être réouvert, mais pas pour
travailler.
Il me reste donc deux solutions : je réaffiche et masque les feuilles
à l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là,
pas moyen : si j'intègre l'affichage ou la fermeture au
Workbook_BeforeSave ça ne fonctionne pas correctement : une
sauvegarde se refait avant la fin, donc mon fichier n'est pas comme
il faut pour le réouvrir, idem pour la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac


Avatar
Jac
Bonjour Philippe,

la problématique de l'ouverture avec gestion des macros ouvertes ou pas est
réglée.

Le "détail" à résoudre est la gestion de l'après enregistrement.

Workbook_BeforeSave fait ce que j'attends de lui, mais ensuite, il faut que
je déclenche une action : soit je ferme le classeur, soit je réaffiche les
feuilles de travail.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:

Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en cas de
non activation des macros (ni dans le BeforeSave ni dans open) ; la
solution sera donc de rédiger sur la page d'accueil un message invitant
l'utilisateur à fermer le fichier et à à activer les macros à la prochaine
ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte et
affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres en
lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur est
sauvé avec la bonne config pour être réouvert, mais pas pour travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles à
l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là, pas
moyen : si j'intègre l'affichage ou la fermeture au Workbook_BeforeSave
ça ne fonctionne pas correctement : une sauvegarde se refait avant la
fin, donc mon fichier n'est pas comme il faut pour le réouvrir, idem pour
la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac






Avatar
Jac
... c'est un super aftershave pour les vieux books grisonnants...
... en vente sur marchand_de_sent_bon.com

Si tu n'es pas encore sorti, il est encore temps....

"Patrick BASTARD" a écrit dans le
message de news:
Bonjour, *Jac*

Je ne connais pas ce Workbook_After shave.
Ne serait-ce pas plûtot Work bouc after chèvre ?

Bon, ok, je sors...
rofl

--
Bien amicordialement,
P. Bastard


Avatar
Philippe.R
Bonsoir,
Une solution serait peut être d'utiliser l'évènement beforeclose plutôt que
beforesave ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:%
Bonjour Philippe,

la problématique de l'ouverture avec gestion des macros ouvertes ou pas
est réglée.

Le "détail" à résoudre est la gestion de l'après enregistrement.

Workbook_BeforeSave fait ce que j'attends de lui, mais ensuite, il faut
que je déclenche une action : soit je ferme le classeur, soit je réaffiche
les feuilles de travail.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:

Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en cas
de non activation des macros (ni dans le BeforeSave ni dans open) ; la
solution sera donc de rédiger sur la page d'accueil un message invitant
l'utilisateur à fermer le fichier et à à activer les macros à la
prochaine ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte et
affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres en
lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur est
sauvé avec la bonne config pour être réouvert, mais pas pour travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles à
l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là, pas
moyen : si j'intègre l'affichage ou la fermeture au Workbook_BeforeSave
ça ne fonctionne pas correctement : une sauvegarde se refait avant la
fin, donc mon fichier n'est pas comme il faut pour le réouvrir, idem
pour la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac










Avatar
Jac
Ouis, mais...
si l'utilisateur enregistre son fichier en cours de travail et le ferme sans
le sauver, alors, le fichier ne sera pas dans la config attendue lors de la
prochaine ouverture : feuille d'alerte visible, feuilles de travail
masquées.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:

Bonsoir,
Une solution serait peut être d'utiliser l'évènement beforeclose plutôt
que beforesave ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:%
Bonjour Philippe,

la problématique de l'ouverture avec gestion des macros ouvertes ou pas
est réglée.

Le "détail" à résoudre est la gestion de l'après enregistrement.

Workbook_BeforeSave fait ce que j'attends de lui, mais ensuite, il faut
que je déclenche une action : soit je ferme le classeur, soit je
réaffiche les feuilles de travail.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en cas
de non activation des macros (ni dans le BeforeSave ni dans open) ; la
solution sera donc de rédiger sur la page d'accueil un message invitant
l'utilisateur à fermer le fichier et à à activer les macros à la
prochaine ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte et
affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres en
lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur est
sauvé avec la bonne config pour être réouvert, mais pas pour
travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles à
l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là,
pas moyen : si j'intègre l'affichage ou la fermeture au
Workbook_BeforeSave ça ne fonctionne pas correctement : une sauvegarde
se refait avant la fin, donc mon fichier n'est pas comme il faut pour
le réouvrir, idem pour la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac













Avatar
Philippe.R
Bonsoir,
Ben si, justement, beforclose interviens systématiquement avant fermeture et
tu peux y imposer l'enregistrement sans alerte.

Essaye ça, dans le module ThisWorkbook, avec une feuille nommée Accueil

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Visible = True
For i = 1 To Sheets.Count - 1
Sheets(i).Visible = xlVeryHidden
Next i

Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True

ThisWorkbook.Saved = True

End Sub

Private Sub Workbook_Open()
For i = 1 To Sheets.Count - 1
Sheets(i).Visible = True
Next i
Sheets("Accueil").Visible = xlVeryHidden
End Sub


--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Ouis, mais...
si l'utilisateur enregistre son fichier en cours de travail et le ferme
sans le sauver, alors, le fichier ne sera pas dans la config attendue lors
de la prochaine ouverture : feuille d'alerte visible, feuilles de travail
masquées.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:

Bonsoir,
Une solution serait peut être d'utiliser l'évènement beforeclose plutôt
que beforesave ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:%
Bonjour Philippe,

la problématique de l'ouverture avec gestion des macros ouvertes ou pas
est réglée.

Le "détail" à résoudre est la gestion de l'après enregistrement.

Workbook_BeforeSave fait ce que j'attends de lui, mais ensuite, il faut
que je déclenche une action : soit je ferme le classeur, soit je
réaffiche les feuilles de travail.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en cas
de non activation des macros (ni dans le BeforeSave ni dans open) ; la
solution sera donc de rédiger sur la page d'accueil un message
invitant l'utilisateur à fermer le fichier et à à activer les macros à
la prochaine ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte
et affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres
en lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur
est sauvé avec la bonne config pour être réouvert, mais pas pour
travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles
à l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là,
pas moyen : si j'intègre l'affichage ou la fermeture au
Workbook_BeforeSave ça ne fonctionne pas correctement : une sauvegarde
se refait avant la fin, donc mon fichier n'est pas comme il faut pour
le réouvrir, idem pour la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac

















Avatar
Jac
Oui, mais, si l'utilisateur enregistre, puis fait des modifs pour "essayer"
(du genre je supprime 3 colonnes...) et ferme sans le désir d'enregistrer,
je ne peux quand même pas lui faire un gosse dans le dos.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
%
Bonsoir,
Ben si, justement, beforclose interviens systématiquement avant fermeture
et tu peux y imposer l'enregistrement sans alerte.

Essaye ça, dans le module ThisWorkbook, avec une feuille nommée Accueil

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Visible = True
For i = 1 To Sheets.Count - 1
Sheets(i).Visible = xlVeryHidden
Next i

Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True

ThisWorkbook.Saved = True

End Sub

Private Sub Workbook_Open()
For i = 1 To Sheets.Count - 1
Sheets(i).Visible = True
Next i
Sheets("Accueil").Visible = xlVeryHidden
End Sub


--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Ouis, mais...
si l'utilisateur enregistre son fichier en cours de travail et le ferme
sans le sauver, alors, le fichier ne sera pas dans la config attendue
lors de la prochaine ouverture : feuille d'alerte visible, feuilles de
travail masquées.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Une solution serait peut être d'utiliser l'évènement beforeclose plutôt
que beforesave ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:%
Bonjour Philippe,

la problématique de l'ouverture avec gestion des macros ouvertes ou pas
est réglée.

Le "détail" à résoudre est la gestion de l'après enregistrement.

Workbook_BeforeSave fait ce que j'attends de lui, mais ensuite, il faut
que je déclenche une action : soit je ferme le classeur, soit je
réaffiche les feuilles de travail.


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Il n'est pas possible de gérer par macro la fermeture du fichier en
cas de non activation des macros (ni dans le BeforeSave ni dans open)
; la solution sera donc de rédiger sur la page d'accueil un message
invitant l'utilisateur à fermer le fichier et à à activer les macros à
la prochaine ouverture.
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"Jac" a écrit dans le message de
news:
Bonjour à tous,

j'ai un classeur qui, avec Workbook_Open masque une feuille d'alerte
et affiche les feuilles de travail. Donc pas de macro activée, pas de
travail. C'est ce que je veux si non une fonction de calcul chiffres
en lettres ne fonctionnerait pas.

Avec Workbook_BeforeSave j'inverse les affichages. Donc le classeur
est sauvé avec la bonne config pour être réouvert, mais pas pour
travailler.

Il me reste donc deux solutions : je réaffiche et masque les feuilles
à l'inverse du Workbook_BeforeSave ou je ferme le fichier afin que
l'utilisateur obtienne ce résultat en réouvrant le fichier. Mais là,
pas moyen : si j'intègre l'affichage ou la fermeture au
Workbook_BeforeSave ça ne fonctionne pas correctement : une
sauvegarde se refait avant la fin, donc mon fichier n'est pas comme
il faut pour le réouvrir, idem pour la fermeture.

Quelqu'un(e) aurait-il l'idée d'une feinte pour faire du
"Workbook_AfterSave" ?

Merci d'avance,

Jac