Automatisch Ecxel bestand sluiten na opslaan

Status
Niet open voor verdere reacties.

isssi

Gebruiker
Lid geworden
6 jan 2015
Berichten
52
Beste lezers,

Ik heb dankzij de deskundigen op dit forum een mooi dagjournaal in Excel kunnen maken met userform en al. Maar ik heb nog een vraag.
Ik wil graag dat het dagjournaal wordt afgesloten wanneer deze wordt opgeslagen, automatisch. De andere actieve workbooks moeten wel open blijven, dus niet Excel in zijn geheel.
Dit is mij wel gelukt in een "opslaan" macro met volgende code:

ActiveWorkbook.Close SaveChanges:=True

Echter zijn er collega's die geen gebruik maken van deze macro knop, en Ctrl+S of de stadaard knop in excel gebruiken om op te slaan. Ik zou graag een code willen plaatsen in de workbook zodat ook hier het dagjournaal automatisc sluit na het opslaan. Dit omdat het een niet-gedeeld bestand is waar men alleen in hoeft te registreren en niet te lezen. Soms vergeet men af te sluiten, met oponthoud tot gevolg. (registreren en hup eruit)

(Andere oplossingen die ik wel kon vinden, zoals automatisch opslaan & sluiten na een bepaalde tijd inactieviteit, zijn te dwingend. Het kan altijd voorkomen dat men even wordt weggeroepen of wordt afgeleidt, en dat mag niet tot verlies van gegevens resulteren, of dat er half geschreven berichten in het dagjournaal komen staan)

Heeft iemand een mooie code paraat? Of een link naar het juiste antwoord is natuurlijk ook prima!

Alvast bedankt voor de moeite.

mvg
Isssi
 
Zet deze in de ThisWorkbook sectie:

Code:
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
    ActiveWorkbook.Close
End Sub
Het actieve werkboek wordt dan gesloten.
Als je maar 1 werkboek open hebt hou je daarom een een Excel interface zonder open document over.
 
Hoi EdMoor!

Wederom, heel heel bedankt!! Ik hoopte al dat je me zou helpen :)
Je bent er zo snel bij!!

mvg Isssi
 
Graag gedaan :)
 
Hoi Edmoor,

Ik heb het erin gezet, echter hij sluit niet af na opslaan...
Moet ik nog iets aanpassen in de code? Nee toch...

Ik heb ook even een blanco excel geprobeerd, en ook daar niet..
Wat doe ik verkeerd?

mvg Isssi
 
Heb je hem wel in de ThisWorkbook sectie gezet? Anders werkt het niet. Hij moet dus niet in een module.
 
Jazeker. Ik upload even een voorbeeld. Het is een verkorte versie van wat je al eerder hebt gezien.
Als ik op de groene macroknop opslaan druk sluit hij netjes af daarna. Doe ik dat met Ctrl+S of met de standaard knop dan niet. Code staat er natuurlijk in.

Bekijk bijlage Dagjournaal.rar
 
Je Dagjournaal doet het hier prima. Hij slaat bij CTRL-S de wijzigingen op een sluit het document. Ook met de knop Opslaan werkt dat prima.
 
Hoi Edmoor,

Het is raar, maar hier echt niet. (Ik ben er zo een die zelfs even de computer herstart om een ander resultaat te verwachten,hihi)
Ik moet vanavond werken en dan probeer ik het daar even. Ik twijfel er ook niet aan dat het gewoon werkt daar!! Die code ziet er zelfs voor een beginner goed uit :)

Ik laat het straks weten. Alvast bedankt tot zover!
 
Hoi Edmoor,

Het werkt hier vlekkenloos zoals verwacht! Ik snap niet waarom thuis niet...

Ik ben heel blij dat je me geholpen hebt, en hoop volgende keer weer :)

Fijne avond nog!

Mvg Isssi
 
Graag gedaan :)
Werk je thuis met dezelfde Excel versie? Volgens mij zit het Aftersave event er pas vanaf Office 2010 in.
 
Dat klopt! Ik werk thuis met 2007, en op het werk met 2010.
Ik had ook al een mooie code om na een bepaalde tijd inactieviteit een popup te voorschijn te toveren met het verzoek af te sluiten. En die werkte thuis wel en dan hier weer niet... Ik blijf dus nog even puzzelen :)
 
Klinkt alsof je je er wel mee vermaakt. Have fun! :)
 
Dat doe ik ook :)
En ook leuk om die codes van jou te ontcijferen trouwens, ik doe mijn best erop.

Fijne avond, en ongetwijfeld tot snel! Groet Isssi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan