Hallo,
Ik ben voor mijn werk bezig met een macro die een aantal bewerkingen doet op een Excelbestand. Deze repeterende handelingen worden tot nu toe handmatig uitgevoerd. Dit deel van de macro werkt inmiddels naar behoren. Om een aantal andere handelingen ook te vangen in deze macro wil ik het volgende doen.
In dezelfde folder waarin het Excelbestand staat waarop de macro draait, staat een mappenstructuur waarvan de eerste altijd Documents heet. Wat daar onder hangt verschilt bijna altijd, zowel in het aantal mappen, als het aantal niveaus. Ik zou graag deze mappenstructuur willen doorzoeken op bestanden met een drietal extensies (.pdf, .dxf en .stp). Het gaat hier vaak om honderden bestanden. Ik wil deze uit deze stuctuur verplaatsen naar een eigen map.
Nu:
Gewenst:
Ik heb nu het volgende in mijn macro gezet:
In principe doet dit wat ik wil. Helaas zoekt de macro maar een paar niveaus diep. Als ik handmatig alle .dxf, .pdf en .stp bestanden 2 niveaus diep heb staan. Werkt de macro. Staan de bestanden dieper in de structuur niet....
Dus als ik alles verplaats naar
Werkt het naar behoren.
Werkt het niet...
Wie kan me hiermee helpen?
Ik ben voor mijn werk bezig met een macro die een aantal bewerkingen doet op een Excelbestand. Deze repeterende handelingen worden tot nu toe handmatig uitgevoerd. Dit deel van de macro werkt inmiddels naar behoren. Om een aantal andere handelingen ook te vangen in deze macro wil ik het volgende doen.
In dezelfde folder waarin het Excelbestand staat waarop de macro draait, staat een mappenstructuur waarvan de eerste altijd Documents heet. Wat daar onder hangt verschilt bijna altijd, zowel in het aantal mappen, als het aantal niveaus. Ik zou graag deze mappenstructuur willen doorzoeken op bestanden met een drietal extensies (.pdf, .dxf en .stp). Het gaat hier vaak om honderden bestanden. Ik wil deze uit deze stuctuur verplaatsen naar een eigen map.
Nu:
Code:
Folder
Werkmap met macro.xlsm
Documenten
Folder 1
Folder 2
bestand.pdf
bestand.dxf
bestand.stp
Code:
Folder
Werkmap met macro.xlsm
Map - PDF
bestand.pdf
Map - DXF
bestand.dxf
MAP - STP
bestand.stp
Code:
Set Fso = CreateObject("Scripting.FileSystemObject")
.
.
.
Set objFolder = Fso.GetFolder((FromPath) & "\Documents\")
.
.
.
For Each objSubFolder In objFolder.subfolders
For Each FileInFolder In objSubFolder.Files
If InStr(1, FileInFolder.Name, ".pdf") Then
FileInFolder.Move (ActiveWorkbook.Path & "\" & Folderprefix & " - PDF" & "\")
ElseIf InStr(1, FileInFolder.Name, ".dxf") Then
FileInFolder.Move (ActiveWorkbook.Path & "\" & Folderprefix & " - DXF" & "\")
ElseIf InStr(1, FileInFolder.Name, ".stp") Then
FileInFolder.Move (ActiveWorkbook.Path & "\" & Folderprefix & " - STP" & "\")
Else
MsgBox "Geen bestanden gevonden"
End If
Next FileInFolder
Next objSubFolder
In principe doet dit wat ik wil. Helaas zoekt de macro maar een paar niveaus diep. Als ik handmatig alle .dxf, .pdf en .stp bestanden 2 niveaus diep heb staan. Werkt de macro. Staan de bestanden dieper in de structuur niet....
Dus als ik alles verplaats naar
Code:
Documents
MAP1
bestanden
Map2
bestanden
MAP3
bestanden
Code:
Documents
MAP1
MAPA
MAPA1
bestanden
MAP2
MAPB
MAPB2
bestanden
Wie kan me hiermee helpen?
Laatst bewerkt: