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

Makro automatisch ausführen

Makro automatisch ausführen
08.04.2016 20:11:26
chris58
Hallo !
Ich ersuche hier wieder mal um Hilfe, ich habe ein Makro, mit dem ich in A5 ein Datum ohne _ Punkt und Strich einbeben kann. Nun habe ich es versucht mit "

Private Sub Worksheet_Change(ByVal Target As Range)" das ganze bei Änderung des Datums in A1  _
automatisch ablaufen zu lassen, jedoch ohne Erfolg. Das Makro geht wenn ich es mit einem Button durchlaufen lasse, jedoch nicht automatisch. Ich habe es ins Tabellenblatt wo das  ganze ablaufen soll, kopiert.
Warum geht das nicht ?
chris

Private Sub Worksheet_Change(ByVal Target As Range)
Dim strDatum As String
strDatum = Format(ActiveSheet. _
Range("A5").Value, "00000000")
With ActiveSheet.Range("A5")
.Value = DateSerial(Right(strDatum, 4), _
Mid(strDatum, 3, 2), Left(strDatum, 2))
.NumberFormat = "dd.mm.yyyy"
End With
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum automatisch bei Eingabe
09.04.2016 03:30:41
Werner
Hallo Chris,
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strDatum As String
Dim strDatum1 As String
Target.NumberFormat = "General"
If Not Target = "" Then
strDatum = Format(Target.Text, "00000000")
strDatum1 = DateSerial(Right(strDatum, 4), Mid(strDatum, 3, 2), Left(strDatum, 2))
Target = strDatum1
Target.NumberFormat = "dd.mm.yyyy"
End If
End Sub
Gruß Werner

AW: Makro automatisch ausführen
09.04.2016 03:40:38
Werner
Hallo Chris,
hatte noch was vergessen, du wolltest es ja nur in Zelle A5.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strDatum As String
Dim strDatum1 As String
If Target.Row = 5 And Target.Column = 1 Then
Target.NumberFormat = "General"
If Not Target = "" Then
strDatum = Format(Target.Text, "00000000")
strDatum1 = DateSerial(Right(strDatum, 4), Mid(strDatum, 3, 2), Left(strDatum, 2))
Target = strDatum1
Target.NumberFormat = "dd.mm.yyyy"
End If
End If
End Sub
Gruß Werner

Anzeige
AW: Makro automatisch ausführen
09.04.2016 10:31:00
chris58
Danke,
geht hervorragend
Ich wollte das ganze Monate (z.B. Mai runterkopieren bis 31ten...April.........bis 30ten) runterkopieren, habe das mit einer Formel gemacht, doch das geht leider nicht so, wie ich es mir gedacht habe. Der Code funktioniert einwandfrei....Danke
chris

AW: Makro automatisch ausführen
09.04.2016 12:58:39
Werner
Hallo Chris,
also da verstehe ich jetzt nur Bahnhof. Die Aufgabe war bei einer händischen Eingabe eines Datums, ohne Trennzeichen, in A5, dass dieses automatisch in ein gültiges Datum geändert wird - und das macht der Code. Was du da jetzt mit einer Formel nach unten kopieren willst ist mir unklar.
Vielleicht solltest du dein Vorhaben mal genauer beschreiben.
Gruß Werner

Anzeige
AW: Makro automatisch ausführen
09.04.2016 13:38:53
chris58
Hallo Werner !
Ich habe den Code in ein Tabellenblatt eingebaut und das funktioniert auch einwandfrei.
Dann habe ich in A6 - A die untenstehende Formel gegeben, damit, wenn ich in A5 ein Datum eingebe, das Datum nach unten kopiert wird. Doch das geht leider nicht. Also z.B.
A5 01022016 = 01.02.2016
A6 =WENN(A5="";"";WENN(MONAT(A5+1)MONAT(A5);"";A5+1))
A7 =WENN(A6="";"";WENN(MONAT(A6+1)MONAT(A6);"";A6+1))
usw.
lg
chris

AW: Makro automatisch ausführen
09.04.2016 16:33:45
chris58
Hallo !
Es geht nun.......warum.......keine Ahnung
Danke nochmal für den Umbau des Cod´s
chris

AW: Danke für die Rückmeldung
09.04.2016 17:05:30
Werner
Hallo Chris,
na dann is ja jut...
Schönes Wochenende noch
Gruß Werner
Anzeige

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige