OVH Cloud OVH Cloud

ne pas enregisitrer si pas de modif

5 réponses
Avatar
claude tele2
bonjour à tous
j'ai oublié comment on fait (et je ne retrouve pas dans le labo) comment
savoir si aucune modification n'a été faite dans le classeur pour pouvoir
fermer sans enregistrer
merci d'avance
claude

5 réponses

Avatar
DarthMac
hello Claude,

s'il n'y a pas de modifs, tu dois pouvoir le fermer simplement avec :
ActiveWorkbook.Close

S'il te demande de sauvegarder, c'est qu'il y a eu des modifications dessus.

mac


bonjour à tous
j'ai oublié comment on fait (et je ne retrouve pas dans le labo) comment
savoir si aucune modification n'a été faite dans le classeur pour pouvoir
fermer sans enregistrer
merci d'avance
claude






Avatar
isabelle
bonjour claude,

pour fermer sans enregistrer,

Workbooks("zaza.xls").Close SaveChanges:úlse

isabelle


bonjour à tous
j'ai oublié comment on fait (et je ne retrouve pas dans le labo) comment
savoir si aucune modification n'a été faite dans le classeur pour pouvoir
fermer sans enregistrer
merci d'avance
claude





Avatar
claude tele2
bonsoir,
merci à vous, darthmac et isabelle
mais j'ai mal formulé ma question
est-il possible de détecter s'il y a eu une modif
du genre (en VBA de cuisine)
if modif then
save
else
zaza.xls.Close SaveChanges:úlse
end if
:-))
claude


"claude tele2" a écrit dans le message de news:
Hg5Zg.123$
bonjour à tous
j'ai oublié comment on fait (et je ne retrouve pas dans le labo) comment
savoir si aucune modification n'a été faite dans le classeur pour pouvoir
fermer sans enregistrer
merci d'avance
claude





Avatar
DarthMac
Claude,

je me permets de réitérer ma réponse (avec des détails) :

DarthMac a déjà répondu :
s'il n'y a pas de modifs, tu dois pouvoir le fermer simplement avec :
ActiveWorkbook.Close

S'il te demande de sauvegarder, c'est qu'il y a eu des modifications dessus.


Cela signifie qu'avec la commande ainsi syntaxée :
if modif then
save
là il te demandera confirmation donc effectivement tu devras taper

Enter ou cliquer Oui
else
zaza.xls.Close SaveChanges:úlse
end if
dans ce cas pas besoin de lui dire False puisque si pas de modif, par

défaut close... close directement ;-)

Si le hic pour toi est d'avoir à accepter de sauvegarder si modif...
c'est une autre étape à atteindre. Confirme moi que c'est ton problème
et je tâcherai de trouver une soluce.

Par contre je ne suis pas sûr que tu puisses récupérer l'info de "if
modif" sans faire une macro qui tracera un évènement change quelque
part en mettant du coup une variable public à 1 (par exemple) ou qui
changera un nom de ton classeur ("insérer un nom" mais qui ne soit pas
un nom de plage).

Je ne sais pas si j'ai été clair sur ce dernier paragraphe... ;-)

++ mac larté est obscure :D

Avatar
claude tele2
oui bien sûr ...
tu as eu raison de réitérer
mais où diable avais-je la tête ?
bonne nuit
:-)
claude
"DarthMac" a écrit dans le message de news:

Claude,

je me permets de réitérer ma réponse (avec des détails) :

DarthMac a déjà répondu :
s'il n'y a pas de modifs, tu dois pouvoir le fermer simplement avec :
ActiveWorkbook.Close

S'il te demande de sauvegarder, c'est qu'il y a eu des modifications
dessus.


Cela signifie qu'avec la commande ainsi syntaxée :
if modif then
save
là il te demandera confirmation donc effectivement tu devras taper Enter

ou cliquer Oui
else
zaza.xls.Close SaveChanges:úlse
end if
dans ce cas pas besoin de lui dire False puisque si pas de modif, par

défaut close... close directement ;-)

Si le hic pour toi est d'avoir à accepter de sauvegarder si modif... c'est
une autre étape à atteindre. Confirme moi que c'est ton problème et je
tâcherai de trouver une soluce.

Par contre je ne suis pas sûr que tu puisses récupérer l'info de "if
modif" sans faire une macro qui tracera un évènement change quelque part
en mettant du coup une variable public à 1 (par exemple) ou qui changera
un nom de ton classeur ("insérer un nom" mais qui ne soit pas un nom de
plage).

Je ne sais pas si j'ai été clair sur ce dernier paragraphe... ;-)

++ mac larté est obscure :D