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

Forumthread: Worksheet Selection Change

Worksheet Selection Change
15.01.2006 15:02:42
Max
Hallo,
mit dem folgenden Makro schreibt Tabelle2 die Daten aus Tabelle1 mit:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Worksheets("Tabelle2").Cells(1, 1).Value = Worksheets("Tabelle1").Cells(1, 1).Value
Worksheets("Tabelle2").Cells(2, 1).Value = Worksheets("Tabelle1").Cells(2, 1).Value
Worksheets("Tabelle2").Cells(3, 1).Value = Worksheets("Tabelle1").Cells(3, 1).Value
End Sub

https://www.herber.de/bbs/user/30070.xlt
Mein Problem:
Nach dem letzten Eintrag in Tabelle1 muß eine weitere Zelle
ausgewählt/markiert werden, damit der letzte Eintrag übertragen wird.
Da ich das Makro in einem Formular verwende und nicht weiß, welchen Eintrag
der Anwender zuletzt macht, muß vor oder beim Wechsel in das Ziel-Blatt noch eine beliebige Änderung im Quell-Blatt erfolgen damit auch der letzte Eintrag mitgenommen wird.
Das gleiche Problem besteht beim Löschen im Quell-Blatt.
Weiß jemand wie ich das Problem lösen kann?
Danke!
Gruß
Max
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Worksheet Selection Change
15.01.2006 15:07:02
Hajo_Zi
Hallo Max,
ist bei Deinem Verfahren nicht was falsch.
Ich wähle Zelle A1 es wird A1:a3 übertragen. Jetzt ändere A1 und Enter und es wird wieder A1:A3 übertragen und das bei jeder ändereung einer Zelle in Tabelle2

AW: Worksheet Selection Change
15.01.2006 15:26:24
Max
Hallo Hajo,
da es sich bei dem Code um einen sogenannten "Bastelcode" handelt, werden bei Änderung
einer Zelle die anderen Zellen (die sich nicht geändert haben) immer wieder mit über-
tragen.
Es entspricht so meinen Anforderungen (?).
Gruß
Max
Anzeige
AW: Worksheet Selection Change
15.01.2006 15:38:27
et999
Hi Max,
lass doch einfach mal das Selection weg. Pack das ganze also einfach in Private Sub Worksheet_Change.... Ich finde so sieht es schon besser aus?!
Du könntest Deine drei Zeilen auch durch dies hier ersetzen:
Dim x
x = Array(1, 2)
Sheets(x).FillAcrossSheets Worksheets(1).Range("A1:A3")
Hat den gleichen Effekt ist aber irgendwie eleganter und ich denke auch flexibeler.
Ich hab da gleich noch selbst 'ne kleine Frage ans Forum. Wie muss ich x genau dimensionieren?
Gruß
Uwe
(:o)
Anzeige
AW: Worksheet Selection Change
15.01.2006 15:49:30
Max
Hallo Uwe,
die hochgeladene Tabelle ist nur ein Muster. Tatsächlich werden aus einem Formular
30-35 definierte Zellen in ein anderes Tabellenblatt übertragen.
Das kann ich leider nicht mit Formeln machen, da innerhalb der Tabelle die Quell-Blätter
später gelöscht werden und nur die Ziel-Blätter erhalten bleiben.
Danke trotzdem!
Max
Anzeige
AW: Worksheet Selection Change
15.01.2006 16:31:55
et999
Hi Max,
dann geht's mit meinem Makro natürlich nicht.
Bringt es Dir aber nicht trotzdem was wenn Du Deins statt in Worksheet_SelectionChange in Worksheet_Change schreibst? Bei meinem Versuch wird dann beim Blattwechsel automatisch upgedated.
Gruß
Uwe
(:o)
AW: Worksheet Selection Change
15.01.2006 16:51:20
Max
Hallo Uwe,
erstmal danke für deine Bemühungen!
Bei direktem Blattwechsel unter Worksheet_Change hast du recht: es wird aktualisiert,
auch wenn die letzte Zelle markiert bleibt.
Bei meiner Datei ist das Ziel-Blatt ausgeblendet und wird per Check-Box bei Bedarf
aktiviert. Hier wird der letzte Eintrag bei Worksheet_Change leider nicht mehr über-
nommen.
Deswegen brauche ich noch irgendeinen (ggf. sinnlosen) Eintrag bei Blattwechsel,
damit der dann wirklich der letzte Eintrag/Änderung ist.
Danke!
Gruß
Max
Anzeige
Erledigt
16.01.2006 18:51:12
Max
;-))
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige