Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
708to712
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
708to712
708to712
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Ordner erstellen mit VBA ( Code anpassen )
13.12.2005 21:02:44
Hans-Georg
Hallo,
mit Hilfe des Forums habe ich einen VBA Code erstellt, num möchte ich diesen Code so anpassen, dass immer ein neuer Ordner erstellt wird in dem dann die Datei abgespeichert wird.
Momentan läuft der Code so :
Die Datei wird gespeichert unter
C:\ECS - AUTO\Name-Vorname-Straße-PLZ-Ort-Kundennummer-Kennzeichen-Datum.xls
Wenn der Name noch nicht vorhanden ist, soll Excel einen Ordner erstellen mit dem Namen und der Kundennummer, ist der Ordner aber vorhanden, soll die Datei automatisch dort hinein gespeichert werden.
Ist das möglich ? und wie mach ich das ?
Hier mein Code :

Private Sub CommandButton2_Click()
Dim SpeicherName As String
SpeicherName = "C:\ECS - Auto\" & Range("A8") & "-" & Range("A9") & "-" & Range("A11") & "-" & Range("H11") & "-" & Range("BA7") & "-" & Range("BA9") & "-" & Range("BA11") & ".xls"
ActiveWorkbook.SaveAs Filename:=SpeicherName
End Sub

Vielen Dank für Eure Hilfe
Hans-Georg

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordner erstellen mit VBA ( Code anpassen )
13.12.2005 22:04:35
Josef
Hallo Hans-Georg!
Am einfachsten so!
Option Explicit

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
  ByVal DirPath As String) As Long

Private Sub CommandButton2_Click()
Dim SpeicherName As String

SpeicherName = "C:\ECS - Auto\" & Range("A8") & "-" & Range("A9") & "-" & Range("A11") & "-" & Range("H11") & "-" & Range("BA7") & "-" & Range("BA9") & "-" & Range("BA11") & ".xls"

MakeSureDirectoryPathExists SpeicherName

ActiveWorkbook.SaveAs Filename:=SpeicherName
End Sub



'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
Fehler beim Speichern
13.12.2005 22:18:04
Hans-Georg
Hallo Rainer,
ich bekomme folgende Fehlermeldung : Sub oder Funktion nicht definiert und dann wird mir diese Stelle des Codes angezeigt :
MakeSureDirectoryPathExists
MfG
HANS-GEORG
Sorry, Anwort war für Sepp !! owT.
13.12.2005 22:19:23
Hans-Georg
AW: Fehler beim Speichern
13.12.2005 22:32:06
Josef
Hallo Hans-Georg!
Die API-Funktion hast du aber schon deklariert?
Genauer sollte es eigentlich so lauten.
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
  ByVal DirPath As String) As Long

Private Sub CommandButton2_Click()
Dim SpeicherName As String
Dim result As Long

SpeicherName = "C:\ECS - Auto\test\" & Range("A8") & "-" & Range("A9") & "-" & Range("A11") & "-" & Range("H11") & "-" & Range("BA7") & "-" & Range("BA9") & "-" & Range("BA11") & ".xls"

result = MakeSureDirectoryPathExists(SpeicherName)

If result <> 0 Then
  ActiveWorkbook.SaveAs Filename:=SpeicherName
Else
  MsgBox "Pfad konnte nicht erstellt werden!", 48, "Hinweis"
End If

End Sub



'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
API Funktion
13.12.2005 22:52:11
Hans-Georg
Hallo Sepp,
ich hab mal in der Hilfe von Excel nachgelesen aber API Funktion hab ich nicht gefunden, daher weiss ich auch nicht, ob diese schon deklariert wurde. Ich habe versucht den Code so in meinen Schaltbutton zu übernehmen, das geht aber meißtens schief, wenn ich den vorhandenen Code lösche, dann stellt sich ein Teil Deines Codes in den Code des Schaltbutton 1. ein. Warum weiß ich aber nicht.
Ich werde es morgen noch einmal versuchen. Vielen Dank erst einmal und gute Nacht !
MfG
Hans-Georg
AW: API Funktion
13.12.2005 22:57:49
Josef
Hallo Hans Georg!
Du kopierst warscheinlich alles in die Sub deines Buttons;-((
So sollte es aussehen!
Option Explicit

'API Deklaration~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
  ByVal DirPath As String) As Long
'Ende API Deklaration~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


'Der Code deines CommandButton
Private Sub CommandButton2_Click()
Dim SpeicherName As String
Dim result As Long

SpeicherName = "C:\ECS - Auto\test\" & Range("A8") & "-" & Range("A9") & "-" & Range("A11") & "-" & Range("H11") & "-" & Range("BA7") & "-" & Range("BA9") & "-" & Range("BA11") & ".xls"

result = MakeSureDirectoryPathExists(SpeicherName)

If result <> 0 Then
  ActiveWorkbook.SaveAs Filename:=SpeicherName
Else
  MsgBox "Pfad konnte nicht erstellt werden!", 48, "Hinweis"
End If

End Sub

'Ende Code CommandButton

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: API Funktion
14.12.2005 05:28:57
Nepumuk
Hallo Sepp,
du hast den Dateinamen in der Variablen "SpeicherName" mit drin. Daher die Fehlermeldung.
Gruß
Nepumuk
AW: API Funktion
14.12.2005 07:33:12
Josef
Hallo Max!
Also bei mir wird, auch mit angehängtem Dateinamen, der Pfad korrekt erstellt!
Die Funktion heist ja auch "MakeSureDirectoryPathExists"
Gruß Sepp

15 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige