Automatisch map aanmaken met macro

Status
Niet open voor verdere reacties.

JDR001

Gebruiker
Lid geworden
26 jan 2011
Berichten
44
Ik heb een database gemaakt voor het registreren van mijn werkuren. Nu wil ik een rapport automatisch in een map opslaan. Het probleem is dat als de map niet aanwezig is ik een fout melding krijg. De uren worden per week opgeslagen. Ik wil dus ook per week een map hebben. Ik moet nu handmatig een map toevoegen. Weet iemand hoe ik automatisch een map aan kan maken?

Bijvoorbeeld: Ik heb mijn uren ingevoerd voor week 4. Nu wil ik een rapport genereren voor week 4. Deze moet in de map C:/uren/wk 4 worden opgeslagen. Echter is de map ‘wk 4’ nog niet aanwezig in de map uren. Ik moet dus eerst handmatig een map 'wk 4' aanmaken voordat het rapport in de map wk 4 wordt gezet. Ik wil dus automatisch met een macro de map ‘wk 4’ aan kunnen maken. Het liefst wil ik dit met een macro doen.
Bedankt zovast.
 
Met deze macro en functie kom je een heel eind...

Code:
Sub testje()
Dim sPad As String, sMap As String

    sPad = "H:\Temp\Export\"
    sMap = sPad & "Moor\" & Right("00" & Format(Date, "ww"), 2)

On Error GoTo DirMaken
ChangeFolder:
    ChDir (sMap)
    Exit Sub

DirMaken:
    CreateDir (sMap)
    GoTo ChangeFolder

End Sub

Code:
Function CreateDir(ByVal Path As String)
Dim mpDirs As Variant
Dim mpPart As String
Dim i As Long

    mpDirs = Split(Path, Application.PathSeparator)
    
    mpPart = mpDirs(LBound(mpDirs))
    For i = LBound(mpDirs) + 1 To UBound(mpDirs)
        mpPart = mpPart & Application.PathSeparator & mpDirs(i)
        On Error Resume Next
        MkDir mpPart
        On Error GoTo 0
    Next i

End Function
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan