Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

2 Worksheet_Change-Ereignisse

Forumthread: 2 Worksheet_Change-Ereignisse

2 Worksheet_Change-Ereignisse
24.08.2020 09:40:31
Heinz
Hallo zusammen
mit dem nachfolgenden Code (aus diesem Forum) wird bei einer Änderung einer Zelle im Bereich E8:E33 in der gleichen Reihe, 36 Zellen rechts davon, ein Zeitstempel gesetzt.
Wie kann ich im gleichen Tabellenblatt daneben einen 2. Zeitstempel erhalten, wenn eine Zelle im Bereich X8:X33 geändert wird?
Über Eure Unterstützung würde ich mich sehr freuen!
Beste Grüsse
Heinz
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range
If Target.Row  1 Then Exit Sub
Set RaBereich = Range("E8:E33")
Application.EnableEvents = False
If Not Intersect(Target, RaBereich) Is Nothing Then
Target.Offset(0, 36) = Format(Now, "hh:mm:ss")
End If
Application.EnableEvents = True
Set RaBereich = Nothing
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: 2 Worksheet_Change-Ereignisse
24.08.2020 09:57:42
UweD
Hallo
Dazu kannst u Union (;) nehmen

Set RaBereich = Union(Range("E8:E33"), Range("X8:X33"))
Das Application.EnableEvents = False würde ich nach der Prüfung ausführen, sonst wird es immer unnötig gesetzt.
Also so..

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range
If Target.Row  1 Then Exit Sub
Set RaBereich = Union(Range("E8:E33"), Range("X8:X33"))
If Not Intersect(Target, RaBereich) Is Nothing Then
Application.EnableEvents = False
Target.Offset(0, 3) = Format(Now, "hh:mm:ss")
End If
Application.EnableEvents = True
Set RaBereich = Nothing
End Sub

LG UweD
Anzeige
AW: 2 Worksheet_Change-Ereignisse
24.08.2020 10:41:23
Heinz
Hallo UweD
vielen herzlichen Dank für Deine funktionierende Lösung!
Folgefrage:
Kann man das "Target.Offset" noch differenziert angegeben?
Ich benutze jetzt ja Union(Range("E8:E33"), Range("X8:X33"))
- bei einer Änderung im Range E8:E33 müsste es heissen Target.Offset(0, 36)
- bei einer Änderung im Range X8:X33 müsste es heissen Target.Offset(0, 19)
Ist das überhaupt möglich und wie lautet da die Syntax?
Danke und Gruss
Heinz
Anzeige
AW: 2 Worksheet_Change-Ereignisse
24.08.2020 10:53:31
UweD
Hallo
dann so...

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Row  1 Then Exit Sub
If Not Intersect(Target, Range("E8:E33")) Is Nothing Then
Application.EnableEvents = False
Target.Offset(0, 36) = Format(Now, "hh:mm:ss")
End If
If Not Intersect(Target, Range("X8:X33")) Is Nothing Then
Application.EnableEvents = False
Target.Offset(0, 19) = Format(Now, "hh:mm:ss")
End If
Application.EnableEvents = True
End Sub

LG UweD
Anzeige
AW: 2 Worksheet_Change-Ereignisse
24.08.2020 11:03:44
Heinz
Super UweD
Das passt perfekt!
Vielen Dank Dir und allen Helfern hier im Forum.
Ich wünsche Euch eine gute Zeit
Heinz
Danke für die Rückmeldung (owT)
24.08.2020 11:05:06
UweD
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige