Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehlerroutine

Forumthread: Fehlerroutine

Fehlerroutine
07.07.2007 11:10:48
highman4
Liebe Excelgemeinde,
Ich habe hier einen Code, wenn dieser Aktiv wird und ich gehe bei der Input-Eingabe auf abbrechen, dann wird der Code auch nicht mehr aktiviert.
Ich wollte vermeiden, daß er bei drücken abbrechen immer in den debug Modus geht.
Kann mir hier vielleicht jemand helfen?
Vielen Dank Marco
Dim JetztNicht As Integer
Dim AlteSpalte As Integer
Dim AlteReihe As Integer
Dim Number As Variant
Dim OldValue As String

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Solange eine relevante Zelle bearbeitet wird wird die Routine gesperrt
If JetztNicht = 1 Then Exit Sub
Reihe = ActiveCell.Row
Spalte = ActiveCell.Column
' Bereich eingrenzen
If AlteSpalte = 28 And (AlteReihe > 1 And AlteReihe  "" Then
JetztNicht = 1
Cells(AlteReihe, AlteSpalte).Activate
Number = InputBox("Bitte geben Sie das Intervall ein" & Chr(13) & "Wenn Sie auf  _
Abbrechen drücken umgehen Sie die Neueingabe eines Intervalls" & Chr(13) & "Folgende Varianten   _
_
stehen zur Auswahl" & Chr(13) & "1 = Intervall 2 2 2 2 2 2 2 1" & Chr(13) & "2 = Intervall 1 2  _
3 4 5 6 7 8" & Chr(13) & "3 = Daten selbst eingegeben ")
If Number = "" Then Exit Sub
If Number = 1 Then
ED = ArbTageAdd(Cells(AlteReihe, AlteSpalte), 2)
Cells(AlteReihe, AlteSpalte + 7) = ED
FW = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 7), 2)
Cells(AlteReihe, AlteSpalte + 11) = FW
SC = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 11), 2)
Cells(AlteReihe, AlteSpalte + 15) = SC
CS = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 15), 2)
Cells(AlteReihe, AlteSpalte + 19) = CS
CL = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 19), 2)
Cells(AlteReihe, AlteSpalte + 23) = CL
ND = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 23), 2)
Cells(AlteReihe, AlteSpalte + 27) = ND
FIS = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 27), 1)
Cells(AlteReihe, AlteSpalte + 31) = FIS
End If
Cells(Reihe, Spalte).Activate
JetztNicht = 0
End If
End If
A$ = (ActiveCell.AddressLocal)
AlteReihe = ActiveCell.Row
AlteSpalte = ActiveCell.Column
Dummy = DoEvents
Exit Sub
End Sub


Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehlerroutine
09.07.2007 06:57:00
Mustafa
Hallo highman4,
Versuch es mal so:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Solange eine relevante Zelle bearbeitet wird wird die Routine gesperrt
If JetztNicht = 1 Then Exit Sub
Reihe = ActiveCell.Row
Spalte = ActiveCell.Column
' Bereich eingrenzen
If AlteSpalte = 28 And (AlteReihe > 1 And AlteReihe  "" Then
JetztNicht = 1
Cells(AlteReihe, AlteSpalte).Activate
Number = InputBox("Bitte geben Sie das Intervall ein" & Chr(13) & "Wenn Sie auf  _
Abbrechen drücken umgehen Sie die Neueingabe eines Intervalls" & Chr(13) & "Folgende Varianten   _
_
_
stehen zur Auswahl" & Chr(13) & "1 = Intervall 2 2 2 2 2 2 2 1" & Chr(13) & "2 = Intervall 1 2   _
_
3 4 5 6 7 8" & Chr(13) & "3 = Daten selbst eingegeben ")
If Number = ""  Then JetztNicht = 0: Exit Sub
If Number = 1 Then
ED = ArbTageAdd(Cells(AlteReihe, AlteSpalte), 2)
Cells(AlteReihe, AlteSpalte + 7) = ED
FW = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 7), 2)
Cells(AlteReihe, AlteSpalte + 11) = FW
SC = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 11), 2)
Cells(AlteReihe, AlteSpalte + 15) = SC
CS = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 15), 2)
Cells(AlteReihe, AlteSpalte + 19) = CS
CL = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 19), 2)
Cells(AlteReihe, AlteSpalte + 23) = CL
ND = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 23), 2)
Cells(AlteReihe, AlteSpalte + 27) = ND
FIS = ArbTageAdd(Cells(AlteReihe, AlteSpalte + 27), 1)
Cells(AlteReihe, AlteSpalte + 31) = FIS
End If
Cells(Reihe, Spalte).Activate
JetztNicht = 0
End If
End If
A$ = (ActiveCell.AddressLocal)
AlteReihe = ActiveCell.Row
AlteSpalte = ActiveCell.Column
Dummy = DoEvents
Exit Sub
End Sub


Ungetestet.
Rückmeldung obs Hilft wäre nett.
Viele Grüße aus Köln.

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige