Hallo allemaal,
ik zit even vast met excel. Wat is het probleem? Ik wil van een bestand waarin een aantal macro's zitten een kopie maken van de data op een worksheet (blad1). Ik gebruik hiervoor de volgende macro die bij afsluiten een kopie van blad1 opslaat als een bestand.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets(1).Copy
ActiveWorkbook.SaveAs "c:\test.xls"
ActiveWorkbook.Close savechanges:=False
ThisWorkbook.Save
End Sub
Als je de macro stap voor stap uitvoert dan zie je dat als sheets(1).copy gedaan wordt, er een nieuw bestand wordt aangemaakt met de naam map1.xls. Dit kan ook een ander nummer hebben, afhankelijk van wat je op dat moment al in excel hebt gedaan. Het gaat echter soms fout bij de opdracht activeworkbook.SaveAs......
Het komt namelijk voor dat dan in plaats van map1.xls het bronbestand wordt opgeslagen als c:\test.xls. Kennelijk wordt dan map1.xls dan niet automatisch geselecteerd.
Waarom dit de ene keer wel misgaat en de andere keer niet, is mij nog niet helemaal duidelijk. Ik zoek de oplossing in de mogelijkheid om bij de opdracht sheets(1).copy een naam te kunnen meegeven aan het nieuwe bestandje dat wordt gegenereerd (map1.xls). Daarna zou je dan namelijk heel gericht dat workbook kunnen selecteren en opslaan als test.xls. Ik heb echter nog geen mogelijkheid gevonden om ipv map1.xls een andere naam te genereren vanuit sheets(1).copy Wie weet er raad?
:shocked: Nanjo
ik zit even vast met excel. Wat is het probleem? Ik wil van een bestand waarin een aantal macro's zitten een kopie maken van de data op een worksheet (blad1). Ik gebruik hiervoor de volgende macro die bij afsluiten een kopie van blad1 opslaat als een bestand.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets(1).Copy
ActiveWorkbook.SaveAs "c:\test.xls"
ActiveWorkbook.Close savechanges:=False
ThisWorkbook.Save
End Sub
Als je de macro stap voor stap uitvoert dan zie je dat als sheets(1).copy gedaan wordt, er een nieuw bestand wordt aangemaakt met de naam map1.xls. Dit kan ook een ander nummer hebben, afhankelijk van wat je op dat moment al in excel hebt gedaan. Het gaat echter soms fout bij de opdracht activeworkbook.SaveAs......
Het komt namelijk voor dat dan in plaats van map1.xls het bronbestand wordt opgeslagen als c:\test.xls. Kennelijk wordt dan map1.xls dan niet automatisch geselecteerd.
Waarom dit de ene keer wel misgaat en de andere keer niet, is mij nog niet helemaal duidelijk. Ik zoek de oplossing in de mogelijkheid om bij de opdracht sheets(1).copy een naam te kunnen meegeven aan het nieuwe bestandje dat wordt gegenereerd (map1.xls). Daarna zou je dan namelijk heel gericht dat workbook kunnen selecteren en opslaan als test.xls. Ik heb echter nog geen mogelijkheid gevonden om ipv map1.xls een andere naam te genereren vanuit sheets(1).copy Wie weet er raad?
:shocked: Nanjo