Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1960to1964
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

Fehlerbehandlung muss erweitert werden

Fehlerbehandlung muss erweitert werden
07.02.2024 11:28:41
mb12
Hallo zusammen,
nach mehreren Jahren kam auf, dass die Fehlerroutine nicht funktioniert, wenn in der Zelle A1 oder B1 kein Wert eingetragen wurde - dann nimmt das Makro eben nur den existierenden Wert und alles ist gut. Nein, ist natürlich nicht gut, denn in A1 sollte die Auftragsnummer, in B1 der Kundenname stehen, damit die Übersichtlichkeit gewahrt bleibt.
Wie ergänze ich das Makro? Lieben Dank im Voraus.

Margarete

Private Sub CommandButton1_Click()
'+++++++++++++++++++++++++++
'Ablaufplan in neuen Ordner speichern
'+++++++++++++++++++++++++++

Dim strPath As String, strFile As String, strPathNew As String, strDir As String

strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Ablaufplan" & ".xlsm" 'fehlender Eintrag in A1 ODER B1 --> Fehler!!!
strPath = "X:\ALS\12_Projekte+VK-Preise\" & Cells(1, 5).Text & "\" 'Cells(1, 5) = Produktbereich (E1)
strDir = Range("A1").Text & " " & Range("B1").Text
strPathNew = strPath & strDir & "\"


If CBool(MakeSureDirectoryPathExists(strPathNew)) Then
ThisWorkbook.SaveAs Filename:=strPathNew & strFile
Else
MsgBox "Fehler beim anlegen des Pfades: " & strPath
End If

End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:33:36
onur
Das ist das FALSCHE Makro, das du gepostet hast.
Der Code der Funktion "MakeSureDirectoryPathExists" wäre relevant.
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:37:13
mb12
Warum funktioniert dann das Makro seit annähernd 10 Jahren genau so?
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:48:41
schauan
Hallöchen,

schreibe vor der Zusammensetzung des Dateinamens

if Range("A1").Text = "" or Range("B1").Text = "" Then Msgbox "Fehlende Daten in A1 oder B1":exit Sub

Falls auch Leerzeichen enthalten sein können, kann man die auch bei der Prüfung wegtrimmen: Trim(Range...))


AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:51:58
mb12
Herzlichen Dank, das habe ich gesucht
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:39:42
mb12
Das habe ich davor noch drin:

Option Explicit

#If Win64 Then

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

#Else

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal DirPath As String) As Long
#End If
Anzeige
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:43:07
onur
Was passiert denn genau ? Was für eine Meldung kommt denn? "Funtioniert nicht" ist nicht sehr aussagekräftig.
AW: Fehlerbehandlung muss erweitert werden
07.02.2024 11:39:45
onur
"Warum funktioniert dann das Makro seit annähernd 10 Jahren genau so? " ? Woher soll ich das wissen ???
Nochmal: Du hast nur einen Teil des Codes gepostet, zudem auch noch das falsche Teil !

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige