Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
576to580
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
576to580
576to580
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA fehler

VBA fehler
27.02.2005 21:19:33
ludowic
Hallo,
ich hab folgendes Makro erstellt und bekomm das mit der Fehlerbehandlung nicht hin.
und zwar durch Abruch durch Benutzer, oder wenn keine Eingabe gemacht wurde, oder die Datei schon existiert.
Für Hilfe wäre ich Dankbar

Sub Produktion_Tagesplan() ' Productionplanplan anlegen für den Tag
ChDrive "z" 'Laufweksauswahl
ChDir "z:\Excel\Production" 'Verzeichnisauswahl
Workbooks.Open "Production.xls"
Workbooks("Production.xls").Activate
Dim Jahr As String
Jahr = Application.InputBox("Monat und Tag eingeben z.B. 0102_ 01 für den Monat 02 für den Tag")
Workbooks("Production.xls").Activate
ActiveWorkbook.SaveAs Filename:="Production-" & (Jahr) & ".xls"
End 

Sub

		

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

Betreff
Datum
Anwender
Anzeige
AW: VBA fehler
Luc
Hallo Ludowic,
habe jetzt keine Zeit, deshalb erstmal nur der Teil für den InputBox-Abbruch. Dann ist Jahr="". Danach musst du fragen, z.B.:
if Jahr="" then exit sub
Du kannst auch einen default-Wert in der InputBox angeben. Der wird dann immer angezeigt. Wenn du ihn auf Jahr legst und Jahr als static-Variable deklarierst (static statt dim) bleibt der Wert von Jahr zwischen den Aufrufen der sub erhalten, d.h. das InputBox-Default zeigt immer deine letzte Eingabe, die du, wenn sie weiter gültig ist, nur bestätigen, nicht neu eingeben musst.
Gruß Luc
AW: VBA fehler - Pardon - teiloffen - owT
Luc
AW: VBA fehler
01.03.2005 11:27:28
Roland
Hallo ludowic,
hier mal ein Ansatz. Das kann man bis zum Exczess treiben, aber die häufigsten Fälle müssten berücksichtigt sein:

Sub Produktion_Tagesplan()
Dim Jahr As String
On Error GoTo errorhandler
ChDrive "z"
ChDir "z:\Excel\Production"
Workbooks.Open "Production.xls"
Jahr = Application.InputBox("Monat und Tag eingeben z.B." & vbLf & "0102_ 01 für den Monat 02 für den Tag", "Dateinamen eingeben", Format(Date, "ddmm_yy"))
If Jahr = vbNullString Or Jahr = "Falsch" Then
MsgBox "Eine namenlose Datei kann nicht gespeichert werden", 0, "Knapp daneben  . . . "
ActiveWorkbook.Close (False)
End If
If Dir("z:\Excel\Production" & "\" & "Production-" & Jahr & ".xls") <> "" Then
If MsgBox("Die Datei " & vbLf & Jahr & vbLf & "existiert bereits. Soll sie überschrieben werden?", 4) = vbNo Then
ActiveWorkbook.Close (False)
Exit Sub
End If
End If
MsgBox Jahr / 2
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:="Production-" & (Jahr) & ".xls"
Application.DisplayAlerts = True
Exit Sub
errorhandler:
If Err.Number = 68 Then
MsgBox "Das Netzlaufwerk steht nicht zur Verfügung." & vbLf & "Benachrichtigen Sie ihren Administrator.", vbExclamation, "Irgendwann musste es ja so kommen!"
ElseIf Err.Number = 1004 Then
MsgBox "Der Datenträger kann nicht beschrieben werden." & vbLf & "Bitte überprüfen.", vbExclamation, "Na toll . . . "
Else
MsgBox "Unbekannter Fehler im Modul Produktion_Tagesplan", vbCritical, "Das sieht böse aus . . . "
End If
End Sub

Gruß aus dem a....kalten Berlin
Roland Hochhäuser
Anzeige
AW: VBA fehler
01.03.2005 11:30:35
Roland
Sorry,
die Zeile MsgBox Jahr / 2 ist natürlich Quatsch und muss raus.
Gruß Roland

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige