Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Neuen Ordner anlegen Inputbox

Neuen Ordner anlegen Inputbox
28.02.2009 13:05:54
Sonnenpeter
Hallo,
ich lege mir über eine Inputbox neue Ordner an.
Leider bekomme ich die Abrechen_Schaltfläche nicht in den Griff.

Sub NeuenOrdnerAnlegen()
Dim strfolder As String
Dim Ordnername As String
Dim Mldg, Titel, Voreinstellung, Wert1
Dim Verzeichnis As String
Dim dlg As Object
On Error Resume Next
Ordnername = Sheets("Daten").Range("C3").Value
Mldg = "Bitte die Ordnername benennen"
Titel = "Neuen Ordner anlegen...."
Voreinstellung = Ordnername
Ordnername = Application.InputBox(Mldg, Titel, Voreinstellung)
If Ordnername = "" Then Exit Sub
If Ordnername = False Then
Exit Sub
Else
Ordnername = Replace(Ordnername, "/", "_")
Ordnername = Replace(Ordnername, "*", "_")
Ordnername = Replace(Ordnername, "?", "_")
Verzeichnis = Left(ThisWorkbook.Path, InStrRev(ThisWorkbook.Path, "\") - 1) _
& Application.PathSeparator & "Projekte"
End If
'PrüfeObVerzeichnisVorhanden
strfolder = Verzeichnis & Application.PathSeparator & Ordnername
If Dir(strfolder, vbDirectory)  "" Then
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = Verzeichnis & Application.PathSeparator
.Title = "Der Ordnername ist bereits vorhanden der Vorgang wird abgebrochen ... "
.Show
End With
Exit Sub
Else
'lege Unterordner an
MkDir strfolder
End If
End Sub


Wenn der Ordnername "" ist soll abgebrochen werden.
Wenn die Schaltfläche Abbrechen gewählt wird soll abgebrochen werden.
If Ordnername = False Then geht aber immer auf Exit Sub, egal ob der Ordnername belegt oder "" ist.
Was ist zu tun?
Gruß Sonnenpeter

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Neuen Ordner anlegen Inputbox
28.02.2009 13:14:18
Jan
Hi,
die Variable Ordnername muss vom Typ Variant sein.
mfg Jan
AW: Neuen Ordner anlegen Inputbox
28.02.2009 13:22:31
Sonnenpeter
Servus Jan,
dass war es wohl, funzt jetzt.
Danke, SP
Variant-Variablen sollte man, wenn möglich
28.02.2009 15:34:35
Daniel
vermeiden.
Interessanterweise funktioniert es auch so, wenn Ordnername ein String ist:
(wobei ich nicht weiss, was passiert, wenn der Code mal auf einer andern Ländervariante läuft)

Ordnername = Application.InputBox(Mldg, Titel, Voreinstellung)
If Ordnername = "" Then Exit Sub
If Ordnername = "Falsch"  Then
...


noch einfacher ist es, die andere Variante der Inputbox zu verwenden (ohne Applicationi davor), dann bleibt der String beim Abbrechen einfach leer:


Ordnername = InputBox(Mldg, Titel, Voreinstellung)
If Ordnername = "" Then Exit Sub
Ordnername = Replace(Ordnername, "/", "_")


Interessanterweise gibt es zwei Varianten der Inputbox, die etwas unterschiedlich reagieren.
btw ON ERROR RESUME NEXT gehört nie niemals nicht einfach so pauschal über den Code drübergeschrieben.
sonst darf man sich nicht wundern, wenn das Makro unerwünschte Ergebnisse liefert und man die Ursache nicht findet.
Gruß, Daniel

Anzeige
AW: Variant-Variablen sollte man, wenn möglich
28.02.2009 15:58:11
Sonnenpeter
Servus Jan,
Danke für die Hinweise.
Gruß SP
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige