Controleren of map bestaat en anders aanmaken

Status
Niet open voor verdere reacties.

JKlerks

Gebruiker
Lid geworden
15 aug 2017
Berichten
54
Goedemiddag allemaal,

ik heb al even gezocht op het forum, maar krijg het met de verschillende codes niet voor elkaar om het werkbaar te krijgen. Nu kan ik alle geprobeerde codes hieronder laten zien, maar die werken wel voor de vraag van de betreffende gebruikers. Misschien dus makkelijker om de uitdaging te beschrijven.

Er is een basismap "C:\ADMINISTRATIE\ONDERWERP\2022\SUB" en hierin wil ik mapnamen controleren en indien afwezig aanmaken obv van de waarde in een cel. Deze waarde staat op deze locatie
Code:
Sheets("BLAD1").Range("AA1").Value
en is een unieke code obv nummer en naam.

Iemand de simpele tip? OF is het hiermee nog te vaag?

Merci d'avance
 
Een simpele zoekopdracht "VBA maak map" had je op het juiste spoor gezet.
Maar vooruit:

Code:
Sub TestMap()
    Dim MijnMap As String
    MijnMap = "C:\ADMINISTRATIE\ONDERWERP\2022\SUB\" & Sheets("Blad1").Range("AA1").Value
    
    With CreateObject("Scripting.Filesystemobject")
        If Not .FolderExists(MijnMap) Then
            .CreateFolder (MijnMap)
        End If
    End With
End Sub
 
Kan ook zo

Code:
Sub jec()
 Dim xp
 xp = "C:\ADMINISTRATIE\ONDERWERP\2022\SUB\" & Sheets("BLAD1").Range("AA1")
 If Dir(xp, 16) = "" Then MkDir xp
End Sub
 
Laatst bewerkt:
Zonder overbodige variabelen:

Code:
Sub M_snb()
 on error resume next
 MkDir "C:\ADMINISTRATIE\ONDERWERP\2022\SUB\" & Sheets("BLAD1").Range("AA1")
End Sub
 
Maar mét overbodige error handling;)
 
Een goede error handling is nooit overbodig.
 
Klopt, maar heb het zelden nodig
 
Heerlijk om jullie "gedachten" hier te lezen. Dank voor de duidelijke antwoorden. De eerste works like a charm! Merci, deze vraag is beantwoord
 
Het gaat er niet om of je hem 'nodig' hebt.
Je moet er altijd voor zorgen dat je hem niet nodig hebt om programmeerfouten te verdoezelen.
Maar je kunt de foutafhandeling wel strategisch inzetten om informatie op te vragen en op basis van die informatie de code te laten werken.
 
Code:
sub zokanhetook()
 CreateObject("shell.application").Namespace([COLOR=#3E3E3E]"C:\ADMINISTRATIE\ONDERWERP\2022\SUB\"[/COLOR]).newfolder [COLOR=#3E3E3E]Sheets("BLAD1").Range("AA1")
end sub[/COLOR]
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan