Hallo alle zusammen,
mal wieder geht was nicht so wie es gehen sollte.
Bitte um eure Hilfe :100:
Also ich möchte über ein Makro einen Ordner löschen mit Inhalt.
Funktionieren tut das ganze schon, aber ich möchte das der Pfad verkürzt wird.
ThisWorkbook und den zellenwert aus B1
Application.ActiveWorkbook.Path + "\" & Range("B1") das geht nicht!!!
Funktioniernder Code:
Public Sub Löschen()
On Error Resume Next
Dim objFileS As Object
Dim objFileFolder As Object
Set objFileS = CreateObject("Scripting.FileSystemObject")
Set objFileFolder = objFileS.GetFolder("C:\Users\Dell\Desktop\Excel\PDF Abfrage\123456789")
objFileFolder.Delete
Set objFileS = Nothing
Set objFileFolder = Nothing
Gruß Paule
Hallo Paule
Code:
Dim Pfad As String
Pfad = ThisWorkbook.Path & "\" & Range("B1")
Gruss Guschti
Danke für die schnelle Antwort
leider bekomme ich es irdendwie nicht eingebaut.
Hallo Paul,
Schreib doch einfach mal Msgbox davor und schau dir an, wie der Pfad aussieht.
Hi schauan,
also der pfad stimmt, aber der ordner wird nicht gelöscht!
ist doch zum verrückt werden. :16:
Grüßle
Hallöchen,
hast Du da drin noch eine Datei offen?
Problem Gelöst
So geht es.
Sub Löschen()
On Error Resume Next
Dim Path As String
Dim oFSO As Object
Path = ThisWorkbook.Path & "\" & Range("B1")
Set oFSO = CreateObject("Scripting.FileSystemObject")
oFSO.DeleteFolder (Path)
Set oFSO = Nothing
End Sub
Jetzt noch MsBox rein bei Fehler dann wäfre das super
Grüßle Paul
Hallo Paul,
vielleicht so?
Code:
Sub Löschen()
On Error GoTo Fehler
Dim Path As String
Dim oFSO As Object
Path = ThisWorkbook.Path & "\" & Range("B1")
Set oFSO = CreateObject("Scripting.FileSystemObject")
oFSO.DeleteFolder (Path)
Set oFSO = Nothing
Exit Sub
Fehler:
MsgBox "Es ist der Fehler " & Err.Number & " mit der Bezeichnung " & Err.Description & " aufgetreten."
End Sub
Moin auch von mir!
Es soll ausdrücklich keine "Verbesserung" von Stefans Code darstellen, aber …
Sprungziele und Exit Sub sind eher ungern gesehen.
On Error Resume Next zwar auch, aber bei erwartbaren Fehlern durchaus üblich, wenn man die Fehlerbehandlung wieder auf 0 stellt.
Deshalb nur ergänzend eine Variante, bei der ich gänzlich auf Variablen verzichte, die hier ja eher dem Leseverständnis dienen, aber (da nur einmalig genutzt) ansonsten imho keinen weiteren Nutzen haben:
Sub Del_RPP()
With CreateObject("Scripting.FileSystemObject")
On Error Resume Next
.DeleteFolder ThisWorkbook.Path & "\" & Range("B1")
If Err.Number <> 0 Then MsgBox Err.Number & vbLf & Err.Description
On Error GoTo 0
End With
End Sub
Gruß Ralf
Hallo Kollegen
Zitat:Dim Pfad As String
Pfad = ThisWorkbook.Path & "\" & Range("B1")
fehlt da nicht was??? Ich sehe keine Tabellenangabe. Aus welcher Tabelle wird dann der Wert geholt???
Und wenn eine andere Mappe geöffnet ist, holt er den Wert "B1" aus der falschen Mappe. Ich würde es so schreiben.
Pfad = ThisWorkbook.Path & "\" & ThisWorkbook.Worksheets("xx Name xx").Range("B1")
mfg Gast 123