Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1828to1832
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
Inhaltsverzeichnis

Automatische Ordner erzeugen?

Automatische Ordner erzeugen?
29.04.2021 09:05:25
Andreas
Hi,
würde gerne wissen, ob es möglich ist wenn man eine Excel-Datei speichert, dass dann automatisch eine Explorer-Ordner mit dem selben Namen erzeugt wird?
Vielen Dank vorab
Gruß Andreas

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatische Ordner erzeugen?
29.04.2021 09:21:22
Rudi
Hallo,
nur wenn du die Datei per VBA speicherst.
Gruß
Rudi
AW: Automatische Ordner erzeugen?
29.04.2021 09:22:37
Andreas
Guten Morgen Rudi,
kannst du mir das genauer erklären?
Gruß Andreas
AW: Automatische Ordner erzeugen?
29.04.2021 10:01:03
Rudi
Hallo,
etwa so:

Option Explicit
Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal Pfad As String) As Long
Sub speichern()
'Ist das Verzeichnis nicht wie angegeben vorhanden, wird es angelegt.
Const sPfad As String = "C:\temp\test\test\test\"
MakeSureDirectoryPathExists sPfad
ActiveWorkbook.SaveAs sPfad & "Test", xlOpenXMLWorkbookMacroEnabled
End Sub

AW: Automatische Ordner erzeugen?
29.04.2021 16:57:16
Andreas
Hi Rudi,
Danke für deine Rückmeldung, leider funktionierts bei mir nicht.
Den Dateipfad hab ich angepasst, aber dort wird wenn ich das Dokument speichere kein Ordner erzeugt.
Vielleicht liegt es daran, dass die folgende Zeile bei mir rot markiert wird?
Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal Pfad As String) As Long
Hast du vielleicht eine Idee, woran das liegen könnte?
Vielen Dank vorab und einen schönen Feierabend
Gruß Andreas
Anzeige
AW: Automatische Ordner erzeugen?
29.04.2021 19:42:42
Yal
Hallo Andreas,
ich schlage eine Alternative mit Einbindung von "Mircosoft Scripting Runtime" vor (Die Version von Rudi wäre schöner. Ich habe aber nicht geprüft, warum es nicht funktioniert)

'Mit Einbindung der Library "Microsoft Scripting Runtime"
' und "Microsoft VB-Script Regular expressions 5.5"
'In VB-Editor unter Extras, Verweise
Sub MappeImEigeneFolder_speichern(WBName As String)
Dim FSO As New FileSystemObject
Dim FolderName As String
Dim FD As FileDialog
Const cBasisPfad = "C:\temp\" '"\" am Ende wichtig
If Not FSO.FolderExists(cBasisPfad) Then MsgBox "Verziechnis """ & cBasisPfad & """ nicht gefunden.": Exit Sub
Set FD = Application.FileDialog(msoFileDialogSaveAs)
FD.InitialFileName = cBasisPfad & wb.Name & ".xls"
If FD.Show Then
FolderName = Mid(FD.SelectedItems(1), 1, InStrRev(FD.SelectedItems(1), ".") - 1)
If Not FSO.FolderExists(FolderName) Then FSO.CreateFolder (FolderName)
Workbooks(WBName).SaveAs cBasisPfad & FolderName & "\" & FD.SelectedItems(1)
End If
End Sub
VG Yal
Anzeige
AW: Automatische Ordner erzeugen?
03.05.2021 10:14:56
Andreas
Guten Morgen Yal,
Danke für deine Arbeit.
'Mit Einbindung der Library "Microsoft Scripting Runtime"
' und "Microsoft VB-Script Regular expressions 5.5"
'In VB-Editor unter Extras, Verweise

Hab ich beides in meiner Mappe aktiviert, den Speicherpfad im Code habe ich abgeändert.
Aber es passiert nichts wenn ich den Code ausführe, es kommt nicht mal eine Fehlermeldung.
Leider genauso wie bei dem Vorschlag von Rudi.
Hast du eine Idee, woran das liegen könnte?
Vielen Dank vorab
Gruß Andreas
AW: Automatische Ordner erzeugen?
03.05.2021 10:39:59
Yal
Hallo Andreas,
die Sub erwartet eine Parameter. Und zwar der Name der zu speichernde Workbook.

Sub ThisWorkbook_speichern()
MappeImEigeneFolder_speichern ThisWorkbook.Name
End Sub
Um eine Liste der gerade geöffneten Workbook zu sehen:

Sub Workbook_auflisten()
Dim msg, W
For Each W In Workbooks
msg = msg & W.Name
Next
MsgBox "Gerade geöffnete Workbooks: " & msg
End Sub
VG
Yal
Anzeige
AW: Automatische Ordner erzeugen?
03.05.2021 10:43:12
Andreas
Hallo zusammen,
habe folgenden Code im Internet gefunden, der zumindest schon mal Ordner erzeugen kann, wenn ich als Dateipfad den Desktop angebe.

Sub aa()
MkDir Environ("userprofile") _
& "\Desktop\SM" & Range("B2") _
& "-" & Range("J2") & "_" & Range("M2")
End Sub

Den Pfad möchte ich aber ändern auf :
X:\Vertrieb\
Bekomme dann aber die Fehlermeldung Pfad nicht gefunden.
Wie schreibt man den Pfad den richtig, damit auch dort der Code funktioniert?
Vielen Dank vorab
Gruß Andreas
Anzeige
AW: Automatische Ordner erzeugen?
03.05.2021 10:53:52
Yal

Sub aa()
MkDir "X:\Vertrieb\Desktop\SM" & Range("B2") & "-" & Range("J2") & "_" & Range("M2")
End Sub
VG
Yal
AW: Automatische Ordner erzeugen?
03.05.2021 13:35:35
Andreas
Super Yal, das funktioniert, vielen Danke =)
Gruß Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige