Ordner erstellen - Datei kopieren

Frage: Wenn ich in F5 etwas eingebe, soll unter einem festgelegten Pfad ein Ordner erstellt werden. Der Name des Ordners soll "P" plus der Inhalt von F5 sein. Die Datei soll gleich in diesen Ordner gespeichert werden - Name auch "P" plus der Inhalt von F5. Wie geht das?

Option Explicit
Private Declare Function MakeSureDirectoryPathExists _
    Lib "imagehlp.dll" (ByVal Pfad As String) As Long
' Pfad bzw. Laufwerkbuchstabe anpassen!!!
Const strPath As String = "C:\Temp\2012\Projecten\P"
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim strTMP As String
    On Error GoTo Fin
    If Target.Address = "$F$5" Then
        Application.EnableEvents = False
        strTMP = strPath & Right(Target.Value, _
            (Len(Target.Value)))
            Target.Offset(1, 0).Value = Now()
            MakeSureDirectoryPathExists (strTMP & "\")
        ActiveWorkbook.SaveAs Filename:= _
            strTMP & "\" & _
            Mid(strTMP, InStrRev(strTMP, "\", -1) + 1), _
            FileFormat:=xlNormal
    End If
Fin:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Error: " & _
        Err.Number & " " & Err.Description
End Sub

Beliebte Posts aus diesem Blog

Formeln - auch Array - per VBA eintragen...

Alle Dateien eines Ordners - Optional mit Unterordner

Excel -> Word in Textmarken (Bookmarks)...