Collapse column

Autor Thema: Zeiteingabe mit einem Automtischen Doppelpunkt  (Gelesen 783 mal)

Offline Bernd f.

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Zeiteingabe mit einem Automtischen Doppelpunkt
« am: Dezember 02, 2017, 23:58:51 Nachmittag »
Ich suche eine Möglichkeit eine Tabelle mit 2 Spalten Zeitangaben Anfang Ende einzugeben ohne jedesmal den Doppelpunkt eingeben zu müssen den Trick mit der Autokorrektur haben wir bereits drin ich habe ein Vba Macro gefunden das für eine Spalte das Problem lösen würde ich weiß aber nicht wie ich die zweite Spalte eingeben muß leider habe ich absolut keine Ahnung wie das gemacht wird oder nach welchen Stichworten ich hier im Forum suchen muß.
Hier was ich gefunden habe.

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim Eingabe As Variant
 
   On Error GoTo ErrorHandler
   If Not Intersect(Target, Columns(1)) Is Nothing Then
      Application.EnableEvents = False
      With Target
         .Value = CDate(Left(Format(Target, "0000"), 2) & ":" & Right(Target, 2))
         .NumberFormat = "[hh]:mm"
      End With
   End If
ErrorHandler:
   Application.EnableEvents = True
End Sub

es wären nicht Columns(1) sondern 3 und 4 was ich versucht habe sind (Target, Columns(3)), Columns(4)) oder (Target, Columns(3)),(Target, [Columns(1)]) und verschiedenes andere wie das geschrieben wird absolut keine Ahnung was ich tun muß oder wo nach ich suchen muß hoffe es kann mit jemand helfen Danke schon mal im vorraus. Eine Kleinigkeit noch als Ergebniss dieses Scripts bekomme ich 07:45:00 AM/PM ich vermute mal das das ein Amerikansches Format ist wenn das als 07:45 also Stunden und Minuten dargestellt würde wäre das optimal. Vielen Dank schon mal im voraus für lesen !!
« Letzte Änderung: Dezember 03, 2017, 00:03:38 Vormittag von Bernd f. »

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Antw: Zeiteingabe mit einem Automtischen Doppelpunkt
« Antwort #1 am: Dezember 03, 2017, 06:21:19 Vormittag »
Private Sub Worksheet_Change(ByVal T As Range)
If Abs(T.Column - 3.5) > 1 Then  Exit Sub
Application.EnableEvents = False
T = "=--TEXT(LEFT(SUBSTITUTE(IF(ABS(CODE(" & _
"""" & T & """" & ")-54)<4,0,)&" & """" & T & _
"""" & "&""00000000"",""q"",0),9),""00\:00\:00\,000"")"
T = T.Value
Application.EnableEvents = True
End Sub

Lohnt sich für "Viel-Zeit-Erfasser". Schneller geht es dann wirklich nicht mehr, aber man muss die Logik (von mir 2006 entworfen) dahinter etwas kapieren:

Formatiere Spalten C:D als hh:mm:ss,000 und gib dort - spaßeshalber zum Lernen - die Werte vor dem Gleichheitszeichen ein:

1 = 10:00
2 = 20:00
3 = 03:00
:::
9 = 09:00
11 = 11:00
21 = 21:00
31 = 03:10
::
91 = 09:10
24 = 1 00:00
29 = 1 05:00
q1 = 01:00
q2 = 02:00
q3 = 03:00 (wie ohne q)
123456 = 12:34:56
291234567 = 1 05:12:34,567

Sollte Dich das q als Füllbuchstabe nerven, kannst Du auch ein anderes Zeichen wählen (nicht: Komma oder #).

« Letzte Änderung: Dezember 03, 2017, 07:25:26 Vormittag von lupo1 »
MfG Lupo1 (und natürlich gern auch Hallo!)

Offline Bernd f.

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Antw: Zeiteingabe mit einem Automtischen Doppelpunkt
« Antwort #2 am: Dezember 03, 2017, 10:13:11 Vormittag »
Vielen Dank funktioniert gut und da die Zeiten zwischen 07uhr und 18 uhr liet ist das mit dem q nicht nötig tolle arbeit danke nochmal :)!!!!!

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Antw: Zeiteingabe mit einem Automtischen Doppelpunkt
« Antwort #3 am: Dezember 03, 2017, 10:39:40 Vormittag »
Freut mich! Danke für's Feedback!
MfG Lupo1 (und natürlich gern auch Hallo!)

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.