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

Worksheet_Change mit anschl. Makro

Worksheet_Change mit anschl. Makro
16.03.2016 13:55:59
Claus
Hallo zusammen,
ich möchte dass Datum und Uhrzeit in Zelle A2 eingetragen werden, wenn in Zelle B2 etwas manuell eingetragen wird. Anschliessend sollen die Werte aus Range (A2:B2) kopiert und als Werte weiter unten eingefügt werden.
Das Aktualisieren von Zelle A2 funktioniert, aber nicht das anschliessende Kopieren und Einfügen der Werte. Was mache ich da falsch?
Hier das Makro, das ich verwende:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim iRow As Integer
iRow = Target.Row
If Application.Intersect(Target, Range(Cells(2, 2), Cells(iRow, 2))) Is Nothing Then Exit  _
Sub
Cells(iRow, 1) = Now()
Range(Cells(iRow, 1), Cells(iRow, 2)).Copy
Cells(1, 1).Select
Selection.End(xlDown).Select
Cells(ActiveCell.Row + 1, 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Cells(2, 2).Select
Range(Cells(2, 1), Cells(2, 2)).ClearContents
ActiveWorkbook.Save
End Sub

Vielen Dank schon Vorab für Eure Hilfe!
Gruss
Claus

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Worksheet_Change mit anschl. Makro
16.03.2016 14:13:57
Michael
Hi Claus,
das Sub zwischendrin ist auf alle Fälle zu viel.
Teste mal:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$2" Then
Application.EnableEvents = False
Cells(2, 1) = Now()   ' geht doch eh nur, wenn B2
Range(Cells(2, 1), Cells(2, 2)).Copy
Cells(1, 1).End(xlDown).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues
Range(Cells(2, 1), Cells(2, 2)).ClearContents
Application.EnableEvents = True
'    ActiveWorkbook.Save  "'" wieder entfernen...
End If
End Sub
Schöne Grüße,
Michael

AW: Worksheet_Change mit anschl. Makro
20.03.2016 11:05:11
Claus
Hallo Michael,
danke für die Hilfe, aber irgendwie klappts doch nicht. Ich sehe den Code, verstehe, was der machen soll, aber er machts nicht (analoges bei den Codes der anderen Antworten)... Also vermute ich mal irgendeine grundlegende Sache.
Ich habe ausprobiert, den Code im VBA-Editor ins Arbeitsblatt einzufügen: kein Erfolg
Ich habe ausprobiert, den Code im VBA-Editor in ein eigenes Modul einzufügen: kein Erfolg
Zelle A1 wird geändert, aber sonst passiert nichts...
Makro-Sicherheit wurde auf niedrig gestellt...
Irgendwo hakts... Aber wo?
Ich hänge meine Datei mal hier an...

Die Datei https://www.herber.de/bbs/user/104474.xls wurde aus Datenschutzgründen gelöscht


Gruss
Claus

Anzeige
AW: Worksheet_Change mit anschl. Makro
20.03.2016 13:21:33
Claus
Ich habs gefunden: Der Code muss (im Nachhinein vollkomen logisch) im jeweiligen Sheet abgelegt sein.
Danke für Eure Hilfe und die Korrekturen des Codes.
Gruss
Claus

AW: Worksheet_Change mit anschl. Makro
16.03.2016 14:20:00
ChrisL
Hi Claus
Hier noch eine Version.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "B2" Then
On Error Resume Next
Application.EnableEvents = False
Dim letzteZeile As Long
If Range("B3") = "" Then
letzteZeile = 3
Else
letzteZeile = Range("B2").End(xlDown).Row + 1
End If
Cells(letzteZeile, 1) = Now
Cells(letzteZeile, 2) = Range("B2")
Range("B2").ClearContents
Application.EnableEvents = True
End If
End Sub

cu
Chris

Anzeige
AW: Worksheet_Change mit anschl. Makro
20.03.2016 11:02:56
Claus
Hallo Michael,
danke für die Hilfe, aber irgendwie klappts doch nicht. Ich sehe den Code, verstehe, was der machen soll, aber er machts nicht (analoges bei den Codes der anderen Antworten)... Also vermute ich mal irgendeine grundlegende Sache.
Ich habe ausprobiert, den Code im VBA-Editor ins Arbeitsblatt einzufügen: kein Erfolg
Ich habe ausprobiert, den Code im VBA-Editor in ein eigenes Modul einzufügen: kein Erfolg
Zelle A1 wird geändert, aber sonst passiert nichts...
Makro-Sicherheit wurde auf niedrig gestellt...
Irgendwo hakts... Aber wo?
Ich hänge meine Datei mal hier an...

Die Datei https://www.herber.de/bbs/user/104474.xls wurde aus Datenschutzgründen gelöscht


Gruss
Claus

Anzeige
AW: Worksheet_Change mit anschl. Makro
20.03.2016 11:03:49
Claus
Sorry, meinte natürlich "Hallo Chris"...

AW: Worksheet_Change mit anschl. Makro
16.03.2016 14:22:39
Michael
Hallo Claus!
Wozu das ganze Kopiere und Eingefüge, wenn Du die Werte gleich dahin schreiben kannst, wo Du sie haben willst?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count = 1 And _
Not Intersect(Target, Range("B2")) Is Nothing Then
On Error GoTo err
Application.EnableEvents = False
Range("A" & Me.Cells(Me.Rows.Count, 1).End(xlUp).Row + 1).Value = Now
Range("B" & Me.Cells(Me.Rows.Count, 1).End(xlUp).Row).Value = Target.Value
Range("B2").Select
Range("B2").ClearContents
ThisWorkbook.Save
End If
err:
Application.EnableEvents = True
End Sub
LG
Michael

Anzeige
AW: Worksheet_Change mit anschl. Makro
20.03.2016 11:04:41
Claus
Hallo Michael,
danke für die Hilfe, aber irgendwie klappts doch nicht. Ich sehe den Code, verstehe, was der machen soll, aber er machts nicht (analoges bei den Codes der anderen Antworten)... Also vermute ich mal irgendeine grundlegende Sache.
Ich habe ausprobiert, den Code im VBA-Editor ins Arbeitsblatt einzufügen: kein Erfolg
Ich habe ausprobiert, den Code im VBA-Editor in ein eigenes Modul einzufügen: kein Erfolg
Zelle A1 wird geändert, aber sonst passiert nichts...
Makro-Sicherheit wurde auf niedrig gestellt...
Irgendwo hakts... Aber wo?
Ich hänge meine Datei mal hier an...

Die Datei https://www.herber.de/bbs/user/104474.xls wurde aus Datenschutzgründen gelöscht


Gruss
Claus

Anzeige
hier
20.03.2016 20:10:58
Michael
Hi zusammen,
Worksheet_Change - Ereignisse müssen immer im jeweiligen Tabellenblatt stehen, nicht in einem allg. Modul.
Datei anbei: https://www.herber.de/bbs/user/104483.xls
Schöne Grüße,
Michael

AW: hier
20.03.2016 22:15:33
Claus
Hallo Michael,
yepp... die Idee kam mir heute vormittag... und schon funktioniert es... Im Nachhinein ist das ja auch logisch... Hinterher ist man halt immer schlauer... Danke trotzdem für den Hinweis!
Gruss
Claus

gerne, vielen Dank für die Rückmeldung owT
21.03.2016 17:29:27
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige