bonjour
Je voudrais ' annuler tout ce qui a été fait depuis le dernier enregistrement ' dans une proc , qui doit par la suite enregistré la feuille
avez vous un code? merci d'avance
bonjour
Je voudrais ' annuler tout ce qui a été fait depuis le dernier enregistrement ' dans une proc , qui doit par la suite enregistré la feuille
avez vous un code? merci d'avance
Bonsoir,
un moyen simple, tu enregistres ton fichier sous un autre nom que tu supprimeras après avoir ré-ouvert l'original
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ActiveWorkbook.SaveAs Filename:= _ "C:\ton chemin\nomfichier.xls", FileFormat:=xlExcel8, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False
Cordialement,
Dom
_____________________________________________
Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
pensez à cliquer sur si votre problème l'est
Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)
Bonjour,
??? annuler toutes les modifications avant de sauver ???
Ben y a qu'a pas sauver
A+
Ben y a qu'a pas sauver
j'y avais pensé mais vu que la proc avant fermeture doit effectuer d'autres operations, ca ne m'arrange pas de garder les modif fait par l'utilisateur.
bonjour le fil le forum tu peus peut être t'orienter sur un truc de ce style
macro1 est sensé faire quand l'utilisateur ferme le fichier puis pas de sauvegarde
protéger ton projet par mot de passe.suffisant pour un non bidouilleur excel!!!
tu peus affiner en mettant un code par exemple "toto" en a1 pour que toi tu puisses sauvegarder facilement
dans thisworkbook
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Option Explicit Private Sub Workbook_BeforeClose(Cancel As Boolean) Macro1 ThisWorkbook.Saved = True End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Cancel = IIf(Sheets(1).[a1] = "toto", False, True) End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Workbook_Open() Sheets(1).[a1] = "" End Sub
SALUTATIONS
Bonsoir,
je vote pour la méthode casefayere car le plus logique est de recharger la dernière sauvegarde, mais pas besoin de sauver à mon avis :
ceci, appelé quand tu en as besoin , fonctionne très bien :
Bonne soirée à tous. Salut Leti.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Sub reload() ThisWorkbook.Saved = True Workbooks.Open ThisWorkbook.FullName End Sub
(\ _ /) Cordialement G@dz
(='.'=)
(")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.
Il y a deja effectivement une macro a executer en before_Close ( qui est doit laisser paraitre une seule feuille (de message) et masquer toutes les autres, ceci dans le but " d'obliger " l'utilisateur a activer les macros)... Mais je pense que la solution de recharger le document me parais interressante.
..... avec mes remerciement pour avoir eclairé ma lanterne de debutant en vba ( je pense que ca se voit..)
re le fil dans ce cas tu peus faire plus simple la macro1 tu la met dans open
bien sûr tes feuilles tu les caches dans propriétes vba
Code : Sélectionner tout - Visualiser dans une fenêtre à part visible=2-xlsheetVeryhidden
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Option Explicit Sub macro1() Dim ws As Worksheet For Each ws In Sheets ws.Visible = True Next Sheets("message").Visible = False End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Option Explicit Private Sub Workbook_BeforeClose(Cancel As Boolean) ThisWorkbook.Saved = True End Sub Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Cancel = IIf(Sheets("Feuil2").[a1] = "toto", False, True) End Sub Private Sub Workbook_Open() Sheets("Feuil2").[a1] = "" macro1 End Sub
SALUTATIONS
Bonjour,
j'adore vba , mais n'est-on pas tout simplement en train de parler des raisons de l'utilisation d'un "modèle" (xlt) ?
cordialement,
Didier
Didier Gonard
Dernier tutoriel : Le VBA qu'est ce que c'est ?
Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
Cours et tutoriels pour apprendre Excel
N'oubliez pas de mettre : ..quand c'est le cas !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager