Hoi,
In deze post http://www.helpmij.nl/forum/showthread.php/827795-Automatisch-mappen-aanmaken-en-bestanden-naar-verplaatsen vond ik een code om mappen aan te maken.
Dit werkt op zich alleen wil ik niet de hele naam van het bestand maar alleen de auteur.
De bestandsnaam ziet er nu asl volgt uit:
Aalbers, Han - De liefde.epub
Alcott, Louisa - onder moeder
Alcott, Louisa - op eigen
Nu wil ik graag dat alles van dezelfde schrijver in 1 map komt.
Het is een lijst met ong. 3000 titels
Kan iemand me helpen?
In deze post http://www.helpmij.nl/forum/showthread.php/827795-Automatisch-mappen-aanmaken-en-bestanden-naar-verplaatsen vond ik een code om mappen aan te maken.
Dit werkt op zich alleen wil ik niet de hele naam van het bestand maar alleen de auteur.
De bestandsnaam ziet er nu asl volgt uit:
Aalbers, Han - De liefde.epub
Alcott, Louisa - onder moeder
Alcott, Louisa - op eigen
Nu wil ik graag dat alles van dezelfde schrijver in 1 map komt.
Het is een lijst met ong. 3000 titels
Kan iemand me helpen?
Code:
Function VraagMap() As String
Dim fldr As FileDialog
Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
With fldr
.Title = "Selecteer een map"
.AllowMultiSelect = False
.InitialFileName = strPath
If .Show = -1 Then
VraagMap = .SelectedItems(1)
End If
End With
Set fldr = Nothing
End Function
Sub VerdeelBestanden()
Dim dFolder As String
Dim dFile As String
Dim fName() As String
Dim i As Integer
'Vraag de naam van de folder waar de epub bestanden staan
dFolder = VraagMap
'Verzamel de epub bestanden en sla alleen de namen zonder de extensie (.epub) op
dFile = Dir(dFolder & "\*.epub")
Do While dFile <> ""
ReDim Preserve fName(i) As String
fName(i) = Left(dFile, Len(dFile) - 5)
i = i + 1
dFile = Dir()
Loop
'Verdeel de epub bestanden over mappen met dezelfde naam als het epub bestand
For i = 0 To UBound(fName)
'Maak de map als deze niet bestaat
If Dir(dFolder & "\" & fName(i), vbDirectory) = "" Then
MkDir dFolder & "\" & fName(i)
End If
'Kopieer het epub bestand naar zijn folder
FileCopy dFolder & "\" & fName(i) & ".epub", dFolder & "\" & fName(i) & "\" & fName(i) & ".epub"
'Verwijder het originele epub bestand
Kill dFolder & "\" & fName(i) & ".epub"
Next
End Sub