Map in bestaande map toevoegen

Status
Niet open voor verdere reacties.

Oude leerling

Gebruiker
Lid geworden
30 aug 2010
Berichten
554
Geacht forum,
Als ik in onderstaande code ,
Code:
Facturen & " " & jaar
, wijzig in ,
Code:
Facturen 2017
, dan werkt het wel.
Wat is er nou mis aan onderstaande code?

Code:
      Sub Map_toevoegen()
Dim jaar As Single
jaar = DatePart("yyyy", Range("A1"))

Dim fs As Object 'Eerst kijken of map al bestaat
Set fs = CreateObject("Scripting.FileSystemObject")
If Not fs.folderexists("C:\Users\Gebruiker\Documents\Facturen & " " & jaar\" & Range("G15").End(xlUp)) Then
MkDir "C:\Users\Gebruiker\Documents\Facturen & " " & jaar\" & Range("G15").End(xlUp)
End If

End Sub
 
zo?
Code:
If Not fs.folderexists("C:\Users\Gebruiker\Documents\Facturen & " " & jaar [COLOR="#FF0000"]&"[/COLOR]\" & Range("G15").End(xlUp))
 
Het maakt denk ik niet uit maar ik zou het bepalen van het jaar zo doen, naast wat VenA al zei:
Code:
Dim Jaar As String
Jaar = Year(Range("A1"))
 
VenA,

De regel wordt rood en geeft aan "Syntaxfout".
Ik heb jouw code gekopieerd , het zou dus goed moeten zijn.
Jaap
 
Ook:
Code:
dim jaar as[COLOR=#0000ff] long[/COLOR]

Code:
If Not fs.folderexists("C:\Users\hsv\Documents\[COLOR=#0000ff]Facturen " & jaar & "\" [/COLOR]& Range("G15").End(xlUp)) Then

Nog gemakkelijker is een regelcode.
Code:
Sub hsv()
 CreateObject("shell.application").Namespace("C:\users\hsv\documents").newfolder "facturen " & Year(Range("A1")) & "\" & Range("G15").End(xlUp)
End Sub

Zowel de map facturen & jaar en de map uit range("G15").end(xlup) wordt aangemaakt.

ps. wel hsv veranderen in gebruiker.
 
Laatst bewerkt:
Zo beter?

Code:
If Not fs.folderexists("C:\Users\Gebruiker\Documents\Facturen " & jaar & "\" & Range("G15").End(xlUp)) Then
 
HSV , dat is inderdaad een mooie compacte code en werkt prima.

VenA , heb jouw nieuwe code ingevoerd en werkt nu goed.

edmoor , met jouw code toegepast , als ik dan op "jaar" klikte , stond het jaartal tussen aanhalingstekens
en dat was met mijn oplossing niet het geval.
dit bedoel ik dus : jouw oplossing gaf "2017"
mijn oplossing gaf 2017
Raar he , de jouwe zal wel de goede zijn.

Alle forumleden bedankt.
Het probleem is opgelost
Jaap
 
Nogal logisch, omdat het dan een string is. Maar als je die ergens aan vast plakt of bijvoorbeeld in een cel plaatst staan die aanhalingstekens er echt niet omheen.
 
Code:
Sub M_snb()
   c00="C:\Users\Gebruiker\Documents\Facturen "  & year(date) & "\" & Range("G15").End(xlUp)
   if dir(c00,16)="" then mkdir c00
End Sub
 
snb,
Dat is een mooie oplossing en die ga ik toepassen
Een goed idee om year(date) direct in de code te plaatsen.
Bedankt voor de reactie .Weer wat opgestoken.

Jaap
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan