Anzeige
Archiv - Navigation
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
824to828
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Verzeichnis in Excel-VBA anlegen

Verzeichnis in Excel-VBA anlegen
08.12.2006 10:38:59
Bernd
Unten stehen code will ich verwenden. Der Nutzer soll beim ersten Start ein Verzeichnis anlegen lassen.
Die Variable LW enthält den Laufwerksbuchstaben mit z. Bsp. C:\ .
Jetzt passiert folgendes:
Gebe ich in der Zeile strjahr="Preislisten" an wird das Verzeichnis braf angelegt.
Die Angabe im Listing führt aber immer zur Fehlermeldung. Wo ist mein Fehler?

Sub funktion()
Dim strjahr As String
Dim strname As String
Dim strFolder As String
If lw = "" Then
MsgBox "Bitte erste das Datenlaufwerk eingeben"
Exit Sub
End If
strjahr = "Preislisten\Kalkulation"
strFolder = lw + strjahr
If Dir(strFolder, vbDirectory) <> "" Then
MsgBox "Das Verzeichnis ist bereits vorhanden !"
Exit Sub
Else
If MsgBox("Das Verzeichnis existiert nicht, " & _
vbLf & "neu anlegen ?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
End If
MkDir strFolder
strname = lw + strjahr + "\" + ActiveWorkbook.name
MsgBox strname
ActiveWorkbook.SaveAs Filename:=strname, FileFormat:=xlNormal, Password:="", writerespassword:="", ReadOnlyRecommended:=False, CreateBackup:=True
strpfad = ""
End Sub

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 10:44:13
lueckii
Hallo Bernd!
Versuch mal die + durch & zu ersetzen. Vielleicht liegts ja daran, daß der gewollte Pfad dadurch nicht erkannt wird.
strFolder = lw + strjahr -&gt strFolder = lw & strjahr
etc.
Gruß Martin
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 10:57:47
Bernd
Das hilft leider nicht.
Bei mkdir
kommt dann Fehler 76
Pfad nicht gefunden
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 10:44:44
Matthias
Hallo Bernd,
Die Angabe im Listing führt aber immer zur Fehlermeldung.
Zu welcher Fehlermeldung in welcher Zeile?
Gruß Matthias
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 10:49:46
Bernd
Bei MKdir strfolder
Laufzeitfehler 76
Pfad nicht gefunden
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 11:02:56
Matthias
Hallo Bernd,
schreibe mal ein MsgBox strfolder in die Zeile vor mkDir. Das mit der Variablen lw ist mir irgendwie suspekt... Was wird angezeigt?
Gruß Matthias
Anzeige
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 11:08:01
Bernd
hatte ich schon
Es wird angezeigt z. Bsp.
C:\Preislisten\Kalkulation
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 11:14:24
lueckii
Hallo Bernd!
Lösch mal das \ zwischen Preislisten\Kalkulationen raus und versuchs nochmal. Bei der jetzigen benennung wird nämlich versucht, 2 Ordner auf einmal anzulegen und ich weiß net ob das geht
Gruß Martin
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 11:21:47
Matthias
Hallo,
dazu gibt es eine nette Windows-Funktion, welche mehrere Verzeichnisse b.B. auf einmal erstellt:

'Deklaration am Anfang des Moduls, außerhalb der Prozedur:
Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal Pfad As String) As Long
Sub Pfad_anlegen()
'wichtig: Backslsh nach dem letzten Verzeichnisnamen!
If MakeSureDirectoryPathExists("C:\test\1\2\3\4\5\") Then
MsgBox "ok"
Else
MsgBox "nicht erfolgreich!"
End If
End Sub

Gruß Matthias
Anzeige
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 15:13:41
Bernd
Hallo Matthias, das mit der declare Funktion war die richtige Lösung.
Danke und schönes Wochende
Gruß
Bernd
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 15:03:02
Bernd
Hallo martin,
das funtkioniert nicht so. weil den unterordner brauche ich schon und den soll das Programm auch anlegen.
Gruß
Bernd
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 15:11:27
Matthias
Hallo Bernd,
das hast du wohl vor lauter (Cross-)Posting nicht alle Antworten gelesen?
Gruß Matthias
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 11:29:31
lueckii
Hallo nochmal!
Vielleicht gehts ja so

Sub funktion()
Dim strjahr As String
Dim strname As String
Dim strFolder As String
If lw = "" Then
MsgBox "Bitte erste das Datenlaufwerk eingeben"
Exit Sub
End If
strjahr = "Preislisten"
strjahr2 = "Kalkulationen"
strFolder = lw & strjahr
strFolder2 = strFolder & "\" & strjahr2
If Dir(strFolder, vbDirectory) <> "" Then
MsgBox "Das Verzeichnis ist bereits vorhanden !"
Exit Sub
Else
If MsgBox("Das Verzeichnis existiert nicht, " & _
vbLf & "neu anlegen ?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
End If
MkDir strFolder
MkDir strFolder2
strname = lw + strjahr + "\" + ActiveWorkbook.name
MsgBox strname
ActiveWorkbook.SaveAs Filename:=strname, FileFormat:=xlNormal, Password:="", writerespassword:="", ReadOnlyRecommended:=False, CreateBackup:=True
strpfad = ""
End Sub

Is zwar nicht sonderlich elegant, müßte aber funktionieren
Gruß Martin
Anzeige
AW: Verzeichnis in Excel-VBA anlegen
08.12.2006 15:15:32
Bernd
Dan Dir Martin,
die Anwort von Matthias ist ideal. Funktioniert wie gewünscht.
Gruß und schönes Wochenende
Bernd
AW: CROSSPOST ! - Habe Dir geantwortet...
08.12.2006 15:28:11
Bernd
Danke,
dies entspricht der lÖSUNG VON mATTHIAS:
dANKE
AW: CROSSPOST ! - Habe Dir geantwortet...
08.12.2006 15:31:15
Matthias
Hallo Bernd,
es bleibt festzuhalten, dass meine Lösung der von Nepumuk entspricht, und nicht umgekehrt.
Ich will mich ja nicht mit fremden Federn schmücken.
Gruß Matthias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige