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

worksheet_change versus _calculate

worksheet_change versus _calculate
18.09.2007 21:38:29
Rolf
Liebe Leute,
ich möchte gerne erreichen, dass ein Eintrag, den ich in Zeile 1 eines Tabellenblatts eintrage, automatisch auch in die Zeile 2 eingetragen wird. Klar könnte ich das durch eine Zellformel wie "=A1" in der Zelle B1 erreichen, das will ich aber nicht, weil diese Formel ja durch einen anderen Eintrag in B1 gelöscht würde.
Ich habe daher dieses hier probiert:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range(Cells(1, 1), Cells(1, 20))) Is Nothing Then
Target.Offset(1, 0) = Target.Value
End If
End Sub


Das klappt aber nicht, wenn ich einen Eintrag in A1 über rechtsausfüllen in die Zellen B1 bis D1 (oder so) eintrage. Die Hilfestellung sagt mir dann, ich solle in einem solchen Fall über Worksheet_calculate gehen.
Das kriege ich aber nicht hin. Kann mir jemand den obigen Code umschreiben, oder gibt es eine andere Lösung?
Danke vielmals!
Rolf

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

Betreff
Datum
Anwender
Anzeige
AW: worksheet_change versus _calculate
18.09.2007 22:11:00
Renee
Hi Rolf,
Und wieso soll das nicht gehen:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Intersect(Target, Range(Cells(1, 1), Cells(1, 20))) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Offset(1, 0) = Target.Value
Application.EnableEvents = True
End Sub


GreetZ Renee

AW: worksheet_change versus _calculate
18.09.2007 22:26:00
Rolf
Hallo Renee,
weil's leider nicht geht.
Aber vielleicht habe ich mich auch ungenau ausgedrückt:
Der Wert in A1 wird auf A2 übertragen, wenn ich ihn in A1 eingebe. Wenn ich aber den Wert aus A1 über Markieren und Strg+r auf B1, C1 etc. übertragen will, tut's diese Lösung (zumindest bei mir) auch nicht.
Rolf

Anzeige
AW: worksheet_change versus _calculate
19.09.2007 08:39:39
Renee
Hi Rolf,
Hab jetzt unter EXCEL 2000 SP-3 deutsch getestet. Beide Codes laufen (auch mit Ctrl-R) wunderbar.
GreetZ Renee

AW: worksheet_change versus _calculate
19.09.2007 09:07:00
Rolf
Hallo Renee,
ich nehme Deinen Einwand erst mal zur Kenntnis. Das muss ich aber zuhause wieder probieren, mach ich auch, aber drum kann ich mich erst heute abend wieder melden.
Rolf

AW: worksheet_change versus _calculate
19.09.2007 22:02:00
Rolf
Hi Renee,
ich bin wieder am Rechner.
Nee, leider tut's der Code bei mir nicht. Wenn ich in eine Zelle in der 1. Zeile eingebe, dann, ja, wird der auch in die 2. Zeile übertragen. Aber wenn ich diesen Wert in der 1. Spalte schon habe und den über strg + r auf andere Zellen übertrage, spricht der Code nicht an. Liegt das daran, dass in diesem Fall die markierten Zellen nicht als Target erkannt werden?
Rolf

Anzeige
AW: worksheet_change versus _calculate
20.09.2007 08:25:47
Wolli
Hallo Rolf, vielleicht hat's tatsächlich mit Deinem Office 97 zu tun. Was Du machen kannst: Füge

debug.print target.address


in den Code ein und schau Dir im Direktfenster (Strg+G) an, was Excel als Target erkennt (oder ob das Makro überhaupt läuft). Vielleicht bringt das was.
Gruß, Wolli

AW: worksheet_change versus _calculate
20.09.2007 12:38:00
Rolf
Hallo Wolli und Renee,
da liegt der Hund wohl tatsächlich begraben. Ich habe Deinen Code (Renee) gerade mit Excel 2003 probiert, da geht er. Muss ich mal zuhause mit dem Excel 97 testen, ob diese Version die Zellen als Target erkennt.
Danke für den Hinweis - jetzt verstehe ich auch die Reaktionen (Eure).
Rolf
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige