Bestanden A en C sluiten terwijl ik in bestand B aan het werken ben

Status
Niet open voor verdere reacties.

samui

Verenigingslid
Lid geworden
26 mei 2012
Berichten
207
A = Dag avondplanning actueel.xlsm
B = Dag Avond week 34 voorlopig.xlsm
C = Weekrooster medewerkers.xlsm

Ik hoop dat het zonder bestanden toe te voegen een van jullie gaat lukken.
Ik ben in bestand B aan het werken. In dit bestand ga ik een macro starten die aanpassingen gaat doen in de bestanden A en C
Nu werkt de complete macro al perfect, omdat ik deze 2 bestanden A & C netjes voor uitvoer van de macro opsla en afsluit indien deze openstaan.
Tijdens uitvoer van de macro worden deze bestanden A en C op de juiste momenten geopend, bewerkt, opgeslagen en weer gesloten.
De bestanden moeten echter wel opgeslagen en afgesloten zijn voordat ik deze macro in bestand B laat starten.


Als ik dus zit te slapen en ik start de macro krijg ik de melding bestand is al geopend en moet........
Welke regels zet ik aan het begin van de macro zodat, allereerst de bestanden A en C opgeslagen en afgesloten worden indien deze open staan?
Zijn een of allebei de bestanden al netjes afgesloten als ik de macro start moet de macro gewoon doorgaan met de rest van de macro.

Alvast bedankt voor jullie reacties :thumb:

Frank
 
Zoiets?
Code:
Sub dotchie()
Dim FileToClose As String
On Error Resume Next
Application.ScreenUpdating = False
FileToClose = (ThisWorkbook.Path & "\A.xlsb")
Workbooks(Dir(FileToClose)).Save
Workbooks(Dir(FileToClose)).Close
FileToClose = (ThisWorkbook.Path & "\C.xlsb")
Workbooks(Dir(FileToClose)).Save
Workbooks(Dir(FileToClose)).Close
Application.ScreenUpdating = True
'Uw macro
End Sub
 
Hallo Philiep,

Dank je voor je oplossing echter:
Ik krijg bij de eerste regel al foutmeldingen die vragen om een regelnummer of ) wat doe ik fout dan?
De bestanden staan op deze locaties:
G:\Dagplanningen\Weekrooster medewerkers.xlsm en
G:\Dagplanningen\Dag avondplanning actueel.xlsm


Sub dotchie()
Dim FileToClose As String
On Error Resume Next
Application.ScreenUpdating = False

FileToClose = (G:\Dagplanningen & "\Weekrooster medewerkers.xlsm")
Workbooks(Dir(Weekrooster medewerkers.xlsm)).Save
Workbooks(Dir(Weekrooster medewerkers.xlsm)).Close
Application.ScreenUpdating = True
'Uw macro
End Sub

Je spreuk heb ik ook even gekopieerd, is een mooie.
 
Probeer deze
Code:
Sub dotchie()
Dim FileToClose As String
On Error Resume Next
Application.ScreenUpdating = False
FileToClose = "G:\Dagplanningen\Weekrooster medewerkers.xlsm"
Workbooks(Dir(FileToClose)).Save
Workbooks(Dir(FileToClose)).Close
FileToClose = "G:\Dagplanningen\Dag avondplanning actueel.xlsm"
Workbooks(Dir(FileToClose)).Save
Workbooks(Dir(FileToClose)).Close
Application.ScreenUpdating = True
'Uw macro
End Sub
Edit, kleine opmerking, plaats uw code tussen codetags (zoals ik gedaan heb), leest een stuk makkelijker voor de helpers.
 
Laatst bewerkt:
Code:
on error resume next
Workbooks("[COLOR=#3E3E3E]Weekrooster medewerkers"[/COLOR]).Close true
workbooks("Dag avondplanning actueel").close true
 
Allebei super.
Harry die van jou is wel heel erg kort en mooi.
Kan ook deze weer sluiten.

Ik zie nu hierboven ook wat er bedoeld wordt om de code tussen de code tags te plaatsen. Ga dit in het vervolg doen.
Voor nu super bedankt weer. :thumb::thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan