Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
404to408
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
404to408
404to408
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

OnChange Ereignis

OnChange Ereignis
Johannes
Hallo Excel-Spezialisten,
in meiner Datei in Tabelle1 sind in ca. 20 Zellen Eintragungen zu machen. In der Tabelle2 der Datei soll dokumentiert werden wann in der jeweils zugehörigen Zelle in Tabelle1 ein Eintrag erfolgt ist:

Sub Buchungszeit()
' hier müsste die "OnChange" Syntax herein,
' die bei Änderung der Zelle "Tabelle1" Range "A3"
' untenstehenden Code auslöst
Sheets("Tabelle2").Select
ActiveCell.FormulaR1C1 = "=NOW()"
Range("A3").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
End Sub

Kann mir jemand hierbei einen Tipp geben wie?
Vielen Dank für Eure Hilfe
Johannes

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

Betreff
Benutzer
Anzeige
AW: OnChange Ereignis
ChrisL
Hi Johannes
Was genau willst du wo genau eintragen. Am einfachsten stellst du eine Beispieldatei ins Forum.
Gruss
Chris
AW: OnChange Ereignis
Johannes
Hallo Chris,
bsp:
Tabelle1 Zelle A3 dort wird ein Messwert eingetragen,
sobald diese Zelle vorher leere Zelle geändert wurde, sprich ein Eintrag erfolgt ist, soll die Uhrzeit zu der der Eintrag erfolgt ist in
Tabelle2 Zelle A3 erfolgen und zwar nicht als Formel, sondern als Wert.
Von den Zelle in die Messwerte eingetragen werden sind in Tabelle1 20 Zellen, sagen wir A3 bis A23 und das Prozedere soll für jede einzelne Zell Anwendung finden.
Ich hoffe das verdeutlicht mein Problem
Gruß
Johannes
Anzeige
AW: OnChange Ereignis
ChrisL
Hi Johannes

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 And Target.Row >= 3 And Target.Row <= 23 Then
Worksheets("Tabelle2").Range("A3") = Date
End If
End Sub

Gruss
Chris
AW: OnChange Ereignis - Danke
Johannes
Hallo Chris,
das war der entscheidende Hnweis von Dir - Danke
Ich habe den Code noch wie folgt angepasst:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 And Target.Row = 3 Then
Worksheets("Tabelle2").Range("A3") = Time
ElseIf Target.Column = 1 And Target.Row = 4 Then
Worksheets("Tabelle2").Range("A4") = Time
ElseIf Target.Column = 1 And Target.Row = 5 Then
Worksheets("Tabelle2").Range("A5") = Time
ElseIf Target.Column = 1 And Target.Row = 6 Then
Worksheets("Tabelle2").Range("A6") = Time
ElseIf Target.Column = 1 And Target.Row = 7 Then
Worksheets("Tabelle2").Range("A7") = Time
End If
End Sub

So klappt das dann wie es brauche.
Gruß
Johannes
Anzeige
AW: OnChange Ereignis - Danke
ChrisL
Hi Johannes
Danke für die Rückmeldung. Dein Code kannst du noch vereinfachen...

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 And Target.Row <= 3 And Target.Row <= 7 Then _
Worksheets("Tabelle2").Cells(Target.Row, 1) = Time
End If
End Sub

Gruss
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige