Automatisches anlegen neuer Zeilen in anderem Worksheet

14/07/2008 - 10:49 von Akiono Wan | Report spam
Hallo,

ich habe folgendes Problem:
Ich trage in Tabelle1 einen Datensatz ein, dies soll nun zur Folge
haben, dass in Tabelle 2 auch ein Datensatz angelegt wird und mit
bestimmten Werten vorbelegt ist. Diese sind aber Abhàngig von der
Eintragung in Tabelle 1.

BSp.
Tabelle1
Column1
Geld
Name


soll in Tabelle 2 automatisch folgende Zeilen generieren
Tabelle2
Column1 Column2
Geld 10
Name Mustermann

Was ich nicht möchte, ist in Tabelle2 in jede Zelle eine Formel
einfügen der Art :wenn(GEld) dann 10 sonst (Wenn(Name dann
Mustermann).
Dies hat 2 Gründe:
1. Ich weiss nicht genau wie die Eintràge in Tabelle 1 Column 1 genau
benannt sind
2. Ich weiss nicht wieviele Datensàtze eingetragen werden, d.h.ich
kann vorher keinen Zellbereich definieren, der die Formeln enthàlt.

Es ist auch kein Problem, das ganze mit VBA umzusetzen, meine Frage
geht in die Richtung, wie erreiche ich mein Ziel sinnvoll.

Zusammenfassung:
Ich benötige ein Best Practise, um in Tabellen Zellen automatisch
einzufügen, abhàngig von der Benutzereingabe.
Gibt es dafür in Excel schon mitgelieferte Routinen oder muss ich das
in VBA selber schreiben? Wenn ich es selber schreiben muss, welche
Events fange ich am besten ab und auf welche Fallstricke muss ich
aufpassen?

Vielen Dank
Akiono Wan
 

Lesen sie die antworten

#1 stefan onken
14/07/2008 - 14:22 | Warnen spam
On 14 Jul., 10:49, Akiono Wan wrote:
Hallo,

ich habe folgendes Problem:
Ich trage in Tabelle1 einen Datensatz ein, dies soll nun zur Folge
haben, dass in Tabelle 2 auch ein Datensatz angelegt wird und mit
bestimmten Werten vorbelegt ist. Diese sind aber Abhàngig von der
Eintragung in Tabelle 1.

BSp.
Tabelle1
Column1
Geld
Name

soll in Tabelle 2 automatisch folgende Zeilen generieren
Tabelle2
Column1 Column2
Geld           10
Name      Mustermann

Was ich nicht möchte, ist in Tabelle2 in jede Zelle eine Formel
einfügen der Art :wenn(GEld) dann 10 sonst (Wenn(Name dann
Mustermann).
Dies hat 2 Gründe:
1. Ich weiss nicht genau wie die Eintràge in Tabelle 1 Column 1 genau
benannt sind
2. Ich weiss nicht wieviele Datensàtze eingetragen werden, d.h.ich
kann vorher keinen Zellbereich definieren, der die Formeln enthàlt.

Es ist auch kein Problem, das ganze mit VBA umzusetzen, meine Frage
geht in die Richtung, wie erreiche ich mein Ziel sinnvoll.

Zusammenfassung:
Ich benötige ein Best Practise, um in Tabellen Zellen automatisch
einzufügen, abhàngig von der Benutzereingabe.
Gibt es dafür in Excel schon mitgelieferte Routinen oder muss ich das
in VBA selber schreiben? Wenn ich es selber schreiben muss, welche
Events fange ich am besten ab und auf welche Fallstricke muss ich
aufpassen?

Vielen Dank
Akiono Wan



hallo Akiono,
Änderungen in Tabellen werden meist mit den Ereignissen
SelectionChange oder Change abgefangen.
SelectionChange feuert bei jedem aktivieren einer Zelle, Change nur
dann, wenn der Zelleninhalt geàndert wird.
Daher ist Change hier wohl das Ereignis der Wahl.
Rechtsklick auf das Register der Tabelle für die Dateneingabe,
linksklick Code anzeigen.
Zum ausprobieren:
füge diesen Code in das große Codefenster

Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Value
End Sub

beende den VBA-Editor und àndere den Inhalt einer Zelle.

Per Code musst du im Worksheet_Change dann ermitteln, ob alle
erforderlichen Zellen ausgefüllt sind, dann die letzte benutze Zeile
oder Spalte in Tabelle2 finden und die Daten kopieren. Oder du
erstellst auf der Tabelle einen Button und kopierst die Daten per
Klick auf diesen Button. Das wàre dann aber nicht automatisch.

Gruß
stefan

Ähnliche fragen