Zellen kopieren

Bild

Betrifft: Zellen kopieren
von: Tina
Geschrieben am: 13.02.2005 11:09:30
Hallo liebe Excelexperten ich beschäftige mich mit einem Problem und komme einfach nicht weiter.
Im Tabellenblatt 1 werden immer und nur in die zelle a1 (ist Bedingung) ständig neue werte eingetragen.
Beim überschreiben gehen ja jedesmal diese Werte verloren.
Nun versuch ich eine Formel zufinden oder auch ein Macro zuschreiben welches die alten Werte aus Zelle a1 automatisch in ein anderes
Tabellenblatt2 untereinander einfügt.
So das nach 10 neu eingetragenen Werten in A1 im Tabellenblatt2 zehn Werte untereinander stehen.
Z.Beispiel: als Macro: kopiere A1 nach Tab.2 zu b1 aber in die nächst angrenzende leere Zelle B2.
Wer hat da eine passende Lösung. Ich arbeite schon seit 10 Jahren im selbststudium mit Excel und habe mein Büroprogramm selbst erarbeitet.
Nur an dieser Stelle komme ich halt nicht weiter. und mit Access will ich nicht unbediengt arbeiten.
Also ich freue mich auf kreative Lösungen
Vielen Dank Jürgen

Bild

Betrifft: AW: Zellen kopieren
von: Ramses
Geschrieben am: 13.02.2005 11:26:22
Hallo
Mauszeiger auf den Tabellenreiter der Tabelle wo dieser Automatismus funktionieren soll
Rechte Maustaste "Code anzeigen"
Den Code dort reinkopieren

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastTR As Integer
Dim tarWks As Worksheet
If Target.Address(False, False) = "A1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("A65536").End(xlUp).Row
    If lastTR > 1 Then
        lastTR = lastTR + 1
    End If
    tarWks.Cells(lastTR, 1) = Target.Value
    Target.Select
End If
End Sub

Gruss Rainer
Bild

Betrifft: AW: Zellen kopieren
von: Tina
Geschrieben am: 13.02.2005 11:40:16
ja so geht das noch nicht die zahlen werden in Tab.2 nur überschrieben aber nicht untereinander geschrieben. Mit dem + 1 funktionert das noch nicht.
Bild

Betrifft: AW: Zellen kopieren
von: Ramses
Geschrieben am: 13.02.2005 11:56:25
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastTR As Integer
Dim tarWks As Worksheet
If Target.Address(False, False) = "A1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("A65536").End(xlUp).Row
    tarWks.Cells(lastTR + 1, 1) = Target.Value
    Target.Select
End If
End Sub

Bild

Betrifft: AW: Zellen kopieren
von: Tina
Geschrieben am: 13.02.2005 14:22:05
Hallo Reiner
Das letzte hat fantastisch gelappt. Das war eine große Hilfe.
Nun kann ich endlich weiter . Nochmals recht vielen Dank für das VBA.
Gruß Jürgen
Bild

Betrifft: AW: Zellen kopieren
von: Tina
Geschrieben am: 13.02.2005 16:43:11
Hallo Reiner
Das Untereinanderschreiben klapp für zelle A1. Wie gegt das nun wenn bei B1 dasselbe wie bei A1 passieren soll?
Ich habs mal so probiert .....
Option Explicit


Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastTR As Integer
Dim tarWks As Worksheet
If Target.Address(False, False) = "A1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("A65536").End(xlUp).Row
    tarWks.Cells(lastTR + 1, 1) = Target.Value
    Target.Select
End If
If Target.Address(False, False) = "B1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("B65536").End(xlUp).Row
    tarWks.Cells(lastTR + 1, 1) = Target.Value
    Target.Select
End If
End Sub

aber da werden die Werte alle in die Spalte A unten oder oben angefügt.
Kannst noch mal Helfen?
Bild

Betrifft: AW: Zellen kopieren
von: Ramses
Geschrieben am: 13.02.2005 18:54:44
Hallo
im Ansatz schon mal nicht schlecht :-)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lastTR As Integer
Dim tarWks As Worksheet
If Target.Address(False, False) = "A1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("A65536").End(xlUp).Row
    tarWks.Cells(lastTR + 1, 1) = Target.Value
    Target.Select
End If
If Target.Address(False, False) = "B1" Then
    Set tarWks = Worksheets("Tabelle2")
    lastTR = tarWks.Range("B65536").End(xlUp).Row
    tarWks.Cells(lastTR + 1, 2) = Target.Value
    Target.Select
End If
End Sub

der 2. Parameter in Cells gibt die Spalte an. Es muss also
tarWks.Cells(lastTR + 1, 2) = Target.Value
heissen. Du hattest
tarWks.Cells(lastTR + 1, 1) = Target.Value
Gruss Rainer
Bild

Betrifft: AW: Zellen kopieren
von: Tina
Geschrieben am: 13.02.2005 20:37:44
Hallo Reiner
Vielen Dank so hat es funktioniert
Gruß Tina
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zellen kopieren"