Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1432to1436
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

Datum schreiben

Datum schreiben
21.06.2015 19:56:04
Spenski

Huhu
mal ne kleine Frage am Rande.
Kann man Excel dazu erziehen automatisch ein Datum zu schreiben wenn ich zb nur 121215 eingebe und es dann 12.12.2015 angezeigt wird?
mfg
Christian

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

Betreff
Datum
Anwender
Anzeige
AW: Datum schreiben
21.06.2015 19:58:52
Sepp
Hallo Christian,
ja, geht per VBA ist aber eigentlich Gemurkse. Wie soll Excel den Wissen, ob du eine Zahl oder ein Datum meinst, wobei ein Datum natürlich auch eine Zahl ist. Gib doch einfach 12-12-15 ein und Excel interpretiert es als Datum.
Gruß Sepp

AW: Datum schreiben
21.06.2015 20:08:08
{Boris}
Hi Sepp,
...ich finde, Du gehst hier mit diesem Wunsch etwas scharf ins Gericht ;-))
Ich finde es schon angenehm, ein Datum eben genau auf die gewünschte Art eingeben zu können.
Halt irgendwas in dieser Art:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dDate As Date
On Error GoTo ERR_HANDLER
With Target
If .Count = 1 Then
If .Column = 3 Then 'wirkt in Spalte C (=3)
If IsNumeric(Target) Then
dDate = CDate(Format(Target, "00-00-00"))
Application.EnableEvents = False
Target = dDate
End If
End If
End If
End With
ERR_HANDLER:
Application.EnableEvents = True
End Sub

VG, Boris

Anzeige
AW: Datum schreiben
21.06.2015 20:34:31
Sepp
Hallo Boris,
hast schon Recht, aber oft macht man sich damit halt Probleme, die man vorher gar nicht hatte.
Dein Code funktioniert, allerdings gibt es "seltsame" Ergebnisse, wenn der Nutzer in eine Zelle eine falsche Eingabe macht. Hab in etwas angepasst (Target.Text stat Target), dann lappt es wieder.
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim dDate As Date
  On Error GoTo ERR_HANDLER
  With Target
    If .Count = 1 Then
      If .Column = 3 Then 'wirkt in Spalte C (=3)
        If IsNumeric(Target.Text) Then
          dDate = CDate(Format(Target, "00-00-00"))
          Application.EnableEvents = False
          Target = dDate
        End If
      End If
    End If
  End With
  ERR_HANDLER:
  Application.EnableEvents = True
End Sub


Gruß Sepp

Anzeige
AW: Datum schreiben
21.06.2015 20:00:35
Hajo_Zi
Hallo Christian,
wenn es nur um Anzeige geht.

Tabelle1
AW: Datum schreiben
21.06.2015 20:25:48
Spenski
Danke euch. Habe Boris seine variante genommen.
gruß

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige