• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel-bestand automatisch opslaan bij openen van het bestand

Status
Niet open voor verdere reacties.

Gert Bouwmeeste

Verenigingslid
Lid geworden
28 nov 2007
Berichten
828
Goedemorgen,

Ik vond deze code om een werkmap op te slaan voordat het bestand wordt gesloten:
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    MyFileName = "G:\Mijn documenten\Downloads\Kopie_Masterfile.xlsm" 'pad en naam aanpassen aan werkelijke situatie
    If Len(Dir(MyFileName)) Then
        SetAttr MyFileName, vbNormal
        Kill MyFileName
    End If
    ActiveWorkbook.SaveCopyAs MyFileName
    SetAttr MyFileName, vbReadOnly
End Sub

Ik wil hetzelfde, maar dan bij openen van het bestand. Als het bestand wordt geopend moet er meteen een kopie worden opgeslagen die de datum en tijd meekrijgt van dat moment, dus als 2014-06-13 10.00 Bestandsnaam.xlsm

Wie kan mij helpen die code aan te passen? Ik heb geprobeerd Workbook_BeforeClose aan te passen in Workbook_Open maar dan krijg ik een foutmelding "Proceduredeclaratie komt niet overeen met de beschrijving van de gebeurtenis of de procedure met dezelfde naam"

Alvast bedankt voor de moeite!
 
Probeer dit eens:

Code:
Private Sub Workbook_Open()
Dim dt As String, wbNam As String

'Document is vaste naam document - vervang naar wens
wbNam = "Document"
dt = Format(CStr(Now), "yyyy-mm-d hh.mm")
ActiveWorkbook.SaveAs Filename:=dt & " " & wbNam
End Sub
 
Laatst bewerkt:
Kijk ook eens in de hulpbestanden van de VBEditor: in principe vind je daar alles wat je nodig hebt.

Code:
Private Sub Workbook_Open()
     Thisworkbook.SavecopyAs replace(thisworkbook.fullname,".",format(date," yyyymmdd."))
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan