Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1396to1400
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

Checkboxen funktionieren nicht

Checkboxen funktionieren nicht
22.12.2014 11:33:10
J.Pisters
Hallo Leute
Ich habe ein kleines Programm geschrieben, was meine Arbeitskollegen auf der Arbeit schon mal gebrauchen können. Und zwar war mein Gedanke, eine Userform zu programmieren, wo man seine Komm- und Gehzeiten eingeben kann und man die Arbeitszeit in Industriestunden ausgegeben bekommt. Zudem war mein Gedanke Frühstückspause und Mittagspause von dieser Zeit abzuziehen. Dieses habe ich in Checkboxen programmiert. Das funktioniert auch alles super, ausser die Gehzeit ist kleiner als die Kommzeit (zb in der Nachtschicht: 22:00 Uhr kommen und 06:00 gehen). Da ich durch die Datediff eine negative Zahl raus bekomme bei dieser Konstellation, muss ich ja 24 Stunden dabei rechnen um wieder das richtige Ergebnis raus zu bekommen. Das Funktioniert auch alles, ausser wenn ich beide Checkboxen anklicke, dann nimmt der das nicht an. Jeweils zwar die einzelnen, nur bei der negativ ausführung, wenn beide angeklickt sind, dann nimmt der unerklärlicherweise nur die Frühstückspause. Und finde den Fehler dafür nicht.
Hier ist der Code:
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click, Button8. _ Enter Dim KZeit As Date = MaskedTextBox1.Text Dim Gzeit As Date = MaskedTextBox2.Text Dim InZeit As String = Label24.Text Label24.Text = Math.Round(DateDiff(DateInterval.Minute, KZeit, Gzeit, ) / 60, 2) If CheckBox5.Checked Then Label24.Text = Math.Round(DateDiff(DateInterval.Minute, KZeit, Gzeit, ) / 60 - 0.25, _ 2) End If If CheckBox3.Checked Then Label24.Text = Math.Round(DateDiff(DateInterval.Minute, KZeit, Gzeit, ) / 60 - 0.5, _ 2) End If If CheckBox3.Checked And CheckBox5.Checked Then Label24.Text = Math.Round(DateDiff(DateInterval.Minute, KZeit, Gzeit, ) / 60 - 0.75, _ 2) End If If Label24.Text Danke für eure Hilfe
Gruß
Julian

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Checkboxen funktionieren nicht
23.12.2014 08:57:04
fcs
Hallo Julian,
irgendwie sieht der Code für die Schaltfläche nicht nach einem VBA-Userform-Code aus.
Jedenfalls wird bei mir im Editor erst einmal fast der gesamte Code rot (= Syntaxfehler).
Nachfolgendend eine Reihenfolgende der Prüfungen wie sie funktionieren sollte.
Ansonsten könntest du deine Prüfungen in den Fällen, in denen nur eine der beiden Checkboxen 3 oder 5 aktiv ist, nach folgendem Schema umschreiben:
If CheckBox5.Checked and Not CheckBox3.Checked Then
D.h., du musst immer den Status beider Checkboxen prüfen, um zum korrekten Ergebnis zu kommen.
Gruß
Franz
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click, _
Button8.Enter
Dim KZeit As Date = MaskedTextBox1.Text
Dim Gzeit As Date = MaskedTextBox2.Text
Dim InZeit As String = Label24.Text
Label24.Text = Math.Round(DateDiff(DateInterval.Minute, KZeit, Gzeit, ) / 60, 2)
If Label24.Text 

Anzeige
AW: Checkboxen funktionieren nicht
23.12.2014 11:52:06
Julian
Also ich habe den Code dementsprechend angepasst, aber wenn ich beide Kästchen nun anklicke, rechnet der gar nichts. Noch nicht mal mehr die Frühstückspause. Wie gesagt wenn es nicht gerade die Negativzeiten sind, dann rechnet der alles sauber aus. Aber sobald es "Nachtschichtzeiten" sind, klappt das alles nicht. Die letzte Befehlszeile wird einfach nicht ausgeführt oder halt nur Teilweise. Ich würde euch gerne die Exe als Anhang geben, damit ihr das mal sehen könnt, aber leider kann ich die nicht anhängen und die ZIP Datei von Winrar aus erkennt der nicht.
Es ist mir immer noch unerklärlich!
Gruß Julian

Anzeige
oder ohne VBA - nur mit Formeln
23.12.2014 19:01:49
Matthias
Hallo
Also ich komme mit dem Codebeispiel auch nicht ganz auf die Reihe.
Sieht mir irgendwie exotisch aus.
Aber egal.
Du kannst doch das Alles auch mit Formeln erledigen.
Vorschlag:
 ABCDEF
1KommenGehenGesamtIndustriezeitabziehbare PauseNettoarbeitszeit
2Formate
3hh:mmhh:mmhh:mmZahlZahlZahl
405:0013:4508:458,750,758,00
513:1522:0008:458,750,758,00
622:0006:0008:008,00 8,00
7      
8Eingabezellen    

Formeln der Tabelle
ZelleFormel
C4=REST(B4-A4;1)
D4=24*REST(B4-A4;1)
F4=D4-E4
C5=REST(B5-A5;1)
D5=24*REST(B5-A5;1)
F5=D5-E5
C6=REST(B6-A6;1)
D6=24*REST(B6-A6;1)
F6=D6-E6


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Frohes Fest wünscht
Matthias L

Anzeige
Ja, Matti (& Franz), ich denke auch, dass ...
26.12.2014 02:37:14
Luc:-?
…Julian hier VBA mit JavaScript verwürfelt hat, denn ein Math-Objekt gibt's mW in letzterer Sprache (evtl auch in VBS), aber nicht in VBA. Auch ist die KopfZeile völlig VBA-untypisch (wohl auch für VBS und JavaScript).
SchöWeihnFT2, Luc :-?

AW: Checkboxen funktionieren nicht
26.12.2014 16:17:47
Mullit
Hallo,
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click, Button8.Enter

so wird das nichts, das ist VB.NET-Code.....
Gruß,

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige