Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1484to1488
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
Fehlerabfrage liefert falsche Werte
26.03.2016 14:36:59
Jens
Hallo nochmal,
Bei der Tabelle zur Arbeitszeiterfassung habe jetzt eine Fehler-Variable eingebaut, die prüft, ob auch nur zulässige Arbeits- und Pausenzeiten in der Tabelle eingegeben wurden.
Die ersten drei Abfragen (Richtige Eintragung bei Urlaub, Arbeitszeit über zehn Stunden, Arbeitszeit nicht negativ) funktionieren einwandfrei.
Nur die vierte Abfrage funktioniert nicht. Also diese:
If Range("E" & lZeile).Value 0 And (Range("D" & _
lZeile).Value * 1440) MsgBox "Fehler in Zeile """ & lZeile & """ Bei einer Arbeitszeit von mehr als _
sechs Stunden muss die Pause mindestens 30 Minuten betragen."
Fehler = True
End If
Das hat bestimmt etwas mit der Formatierung der Zellen in Excel zu tun. Die Zellen der Spalte B,C und D sind in hh:mm formatiert. B ist dabei Anfangsarbeitszeit, C Arbeitszeitende und D ist die Pausenzeit. Die Spalte E ist die Gesamtarbeitszeit (formatiert benutzerdefiniert im Format 0,00;-0;;@).
Ich weiss leider nicht, was genau Excel da als Wert angibt wenn in der Zelle z.B. 00:30 steht. Ich vermute mal, dass der Wert mit 1440 multipliziert werden muss. Aber die Abfrage läuft so eben auch nicht korrekt. Weiss da jemand weiter ?
Vielen Dank !
Der ganze Code:
Private Sub CommandButton1_Click()
Dim lZeile  As Long
Dim Fehler As Long
Fehler = False
For lZeile = 14 To 44
If Range("F" & lZeile).Value = "URLAUB" Then
If Range("B" & lZeile).Value = "" Or _
Range("C" & lZeile).Value = "" Then
MsgBox "Fehler in Zeile  """ & lZeile & """  Bei geringfügig Beschäftigten mü _
ssen die geplanten Arbeitszeiten für einen Urlaubstag angegeben werden."
Fehler = True
End If
End If
If Range("E" & lZeile).Value > 10 Then
MsgBox "Fehler in Zeile  """ & lZeile & """  Die tägliche Arbeitszeit darf zehn  _
Stunden nicht überschreiten."
Fehler = True
End If
If Range("E" & lZeile).Value  0 And (Range("D" &    _
_
_
lZeile).Value * 1440) 

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehlerabfrage liefert falsche Werte
27.03.2016 11:10:00
Jens
Fehler gefunden....
Das Vorzeichen war falsch. Grösser 6 ist richtig....
Anzeige

126 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige