Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
800to804
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
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Eingabe von Stunden ohne ":"
09.09.2006 23:20:19
Stunden
Hallo zusammen,
ich habe ein Formular, in das in eine Zelle Stunden eingegeben werden sollen. Trotz Hinweis auf eine Eingabe im Format "hh:mm" gibt es doch immer wieder solche Helden, die z.B. nur 20 eingeben, in der Hoffnung, dass das dann 20 Stunden sind. Gibt es über das Worksheet_Change eine Möglichkeit herauszufinden, ob ein ":" eingeben wurde. Ich hab das Problem, dass Target bei der Eingabe von z.B. "18:00" den Wert 0,75 wiedergibt und ich es so nicht ruasfinden kann. Ich möchte eigentlich erreichen, dass bei einer Eingabe ohne ":" der eingegebene Wert in Stunden umgerechnet wird, also ein ":" hinten angestellt wird.
Kann mir hier jemand bitte helfen.
Besten Dank im voraus
Michi

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eingabe von Stunden ohne ":"
09.09.2006 23:34:29
Stunden
Hi Michi,
nutz die Text-Eigenschaft:
MsgBox Target.Text
Da kannst du ermitteln, ob im Ergebnis ein : vorkommt.
Grüße Boris
Gültigkeit
09.09.2006 23:35:41
xlSchnack
Hi Michi,
da benötigst du kein Makro für.
Markiere den Bereich, für den das gelten soll.
Gehe über Menü/Daten/Gültigkeit/Registerblatt Einstellungen
Dort unter "Zulassen": Zeit
unter "Daten": Zwischen
unter "Anfangszeit": 00:00:00 eingeben
unter "Endzeit": 23:59:59 eingeben
Im Registerblatt Fehlermeldung, die obere Checkbox anhaken und Typ "Stopp" auswählen.
Auf Wunsch kannst du dort noch eine persönliche Fehlermeldung hinterlegen.
Die Zelle(n) selbst müssen im Format hh:mm formatiert sein.
Salut
Anzeige
AW: Eingabe von Stunden ohne ":"
09.09.2006 23:41:10
Stunden
Hallo Michi,
wie ist es damit?

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value >= 1 Then Target.Value = Target.Value / 24
End Sub

Da Uhrzeiten Bruchteile eines Tages sind, bleiben eingegebene Uhrzeiten kleiner als 1.
Um Dezimalzahlen in Stunden umzurechnen, mußt Du sie durch 24 teilen, da 24:00 Uhr Dezimal 1 ist.
So geht auch die Eingabe von 20,5 um 20:30 herauszubekommen, wenn das Zellformat auf hh:mm eingestellt ist.
Gruß Jörg
AW: Eingabe von Stunden ohne ":"
10.09.2006 10:21:25
Stunden
Hallo zusammen,
vielen Dank für die Rückmeldungen. Diese Varianten hab ich alle schon selber ausprobiert, aber leider ohne Erfolg. Mit Gültigkeit würde es schon gehen, aber ich will ja, dass bei einer Eingabe ohne ":" das so in Stunden umgerechnet wird, also aus "20" soll er "20:00" machen und nicht "480:00". Mit Target.Value hab ich's auch versucht, aber es sollen auch Werte über 24:00 eingegeben werden können. Ich will eigentlich nur erkennen, ob ein ":" eingegeben wurde um dann die entsprechenden Anpassungen machen zu können.
Bei Target.Text zeigt er mir trotzdem die Eingabe schon formatiert an, also 20 zeigt er als "00:00", weil die Zelle schon als "hh:mm" formatiert ist.
Vielleicht fällt ja noch jemandem was ein dazu, würd mich freuen.
Viele Grüße
Michi
Anzeige
AW: Eingabe von Stunden ohne ":"
10.09.2006 18:28:24
Stunden
Hallo Michi,
was wird wenn jemand 20 Minuten will und nicht 20 Stunden?
prüfe ob der Doppelpunkt in der Eingabe enthalten ist und wenn nicht dann ergänze die Eingabe um ":00"
AW: Eingabe von Stunden ohne ":"
10.09.2006 18:41:13
Stunden
Hallo Andre,
danke für den Hinweis. Aber wie kann ich prüfen, ob jemand den Doppelpunkt eingegeben hat? Genau das ist mein Problem.
Grüße
Michi
AW: Eingabe von Stunden ohne ":"
10.09.2006 19:02:43
Stunden
Hallo Michi,
dazu gibt es den Befehl INSTR
If InStr(1, [a1], ":") = 0 Then MsgBox ": nicht drin"
AW: Eingabe von Stunden ohne ":"
10.09.2006 20:30:40
Stunden
Hallo Andre,
hab ich auch schon probiert, funzt aber nicht. ich glaub, das Problem ist, dass die Zelle schon als "hh:mm" formatiert ist und er dann das ":" nicht im Text erkennt. Bei deiner Lösung kommt die msgbox immer, auch wenn ich z.B. "18:00" eingeb, was ja zulässig sein soll.
Fällt Dir noch was ein?
Danke und Grüße
Michi
Anzeige
AW: Eingabe von Stunden ohne ":"
10.09.2006 21:00:41
Stunden
Hallo Michi,
dann probier es mal so:
If Val([a1]) &gt 0 Then [a1] = [a1] / 24
AW: Eingabe von Stunden ohne ":"
10.09.2006 21:32:45
Stunden
Hallo Andre,
ich will ja eigentlich beides zulassen, also wenn man "20:00" eingibt ist es ok und wenn man nur "20" eingibt, soll es umgerechnet werden in "20:00". Und daran, glaub ich werd ich scheitern. Es soll ja nicht grundsätzlich umgerechnet werden, sondern nur wenn man einen Wert ohne ":" eingibt, soll das ":" angehängt werden.
Aber trotzdem danke für Deine Hilfe.
Grüße
Michi
AW: Eingabe von Stunden ohne ":"
11.09.2006 10:54:33
Stunden
Hallo Michi,
probier mal - bezieht sich jetzt nur auf A1:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Address(0, 0) = "A1" Then
If IsNumeric(.Value) Then
If .Value > 1 Then
Application.EnableEvents = False
.Value = .Value / 24
Application.EnableEvents = True
End If
End If
End If
End With
End Sub

Hugo
Anzeige
AW: Eingabe von Stunden ohne ":"
11.09.2006 16:15:26
Stunden
Hallo Michi,
ich habs probiert und gesehn dass das bei meinem code so funktioniert. Wenn Du die Zeit ordentlich mit Doppelpunkt eingibst ist der Wert in der Zelle 0 und wenn Du 20 eingibst dann nicht und es erfolgt die Umrechnung.
AW: Eingabe von Stunden ohne ":"
11.09.2006 22:40:46
Stunden
Hallo Hugo,
das funktioniert soweit ganz gut, nur sobald ich was eingeb mit ":", was gößer als 24:00 ist, geht's nicht. Ist für mich aber logisch, weil er dann ja durch 24 teilt. Ich glaub, das was ich will, geht so nicht. Ich müßte irgendwie erkennen, ob bei der Eingabe ein ":" vorkommt. Ich hab auch schon überlegt, die Zelle als Text zu formatieren und dann mit Instr() den ":" auszulesen. Das würd auch gehen, nur ist es mir mittlerweile zu aufwändig, dann immer das Format anzupassen. Ich hab's jetzt über die Gültigkeit gelöst.
Aber DANKE für Eure zahlreichen Meldungen.
Viele Grüße
Michi
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige