Clever-Excel-Forum

Normale Version: Kopieren von einzelnen Zellen in die nächste freie Zeile in einer anderen Tabelle
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
hallo  allerseits in die runde! 
Ich beschäftige mich gerade mit dem kopieren von angaben einzelner Zellen, von einer Tabelle(Tabelle2) in eine andere Tabelle(Tabelle1).
und suche dafür hier Anregungen zur Umsetzung !Ich habe mir auch schon die Werse tutorielles angeschaut  

Die angaben sollen in die Nässte Freie Zeile kopiert werden  und  die zellbreite in der Ziel- Tabelle  sich automatisch an den Zell Inhalt anpassen . Sind die angaben dann kopiert sollen dann die Zellen in der Ursprungs mappe gelehrt werden für die Nässten eingaben - und so weiter !



(Tabelle2!B21) zu Tabelle1 in (Spalte! B3:B)
(Tabelle2!D21) zu Tabelle1 in (Spalte! C3:C)
(Tabelle2!B24) zu Tabelle1 in (Spalte! D3:D)
(Tabelle2!B27) zu Tabelle1 in (Spalte! A3:A)
(Tabelle2!B32) zu Tabelle1 in (Spalte! F3:F)
(Tabelle2!B35) zu Tabelle1 in (Spalte! G3:G)
(Tabelle2!B38) zu Tabelle1 in (Spalte! H3H)

Ich hoffe ich konnte es einigermaßen verständlich erklären .05
(14.08.2022, 11:54)k-siebke schrieb: [ -> ]hallo  allerseits in die runde! 
Ich beschäftige mich gerade mit dem kopieren von angaben einzelner Zellen, von einer Tabelle(Tabelle2) in eine andere Tabelle(Tabelle1).
und suche dafür hier Anregungen zur Umsetzung !Ich habe mir auch schon die Werse tutorielles angeschaut  

Die angaben sollen in die Nässte Freie Zeile kopiert werden  und  die zellbreite in der Ziel- Tabelle  sich automatisch an den Zell Inhalt anpassen . Sind die angaben dann kopiert sollen dann die Zellen in der Ursprungs mappe gelehrt werden für die Nässten eingaben - und so weiter !



(Tabelle2!B21) zu Tabelle1 in (Spalte! B3:B)
(Tabelle2!D21) zu Tabelle1 in (Spalte! C3:C)
(Tabelle2!B24) zu Tabelle1 in (Spalte! D3:D)
(Tabelle2!B27) zu Tabelle1 in (Spalte! A3:A)
(Tabelle2!B32) zu Tabelle1 in (Spalte! F3:F)
(Tabelle2!B35) zu Tabelle1 in (Spalte! G3:G)
(Tabelle2!B38) zu Tabelle1 in (Spalte! H3H)

Ich hoffe ich konnte es einigermaßen verständlich erklären .05

Sorry hab vergessen zu sagen das ich mittels VBA kopieren will
Prinzipiell funktioniert es so

Sub Uebertragen()

    Dim wsQ As Worksheet
    Set wsQ = ThisWorkbook.Sheets("Tabelle2")
   
    Dim wsZ As Worksheet
    Set wsZ = ThisWorkbook.Sheets("Tabelle1")
   
    Dim lRowZ As Long
    lRowZ = wsZ.Cells(Rows.Count, 9).End(xlUp).Row
   
    With wsZ
        .Cells(lRowZ, 1) = wsQ.Cells(27, 2)
        .Cells(lRowZ, 2) = wsQ.Cells(21, 2)
        .Cells(lRowZ, 3) = wsQ.Cells(21, 4)
        .Cells(lRowZ, 4) = wsQ.Cells(34, 2)
        .Cells(lRowZ, 6) = wsQ.Cells(32, 2)
        .Cells(lRowZ, 7) = wsQ.Cells(35, 2)
        .Cells(lRowZ, 8) = wsQ.Cells(38, 2)
    End With
   
End Sub
danke ich werde   mal deine Version ausprobieren! Inzwischen war ich nicht untätig und habe mich selbst daran versucht, Leider ohne Erfolg  

Code:
Sub KlärfallTabelle()

Worksheets("Eingabemaske").Select
Bemerkung = Range("B27")
SKU(Kisoft) = Range("B21")
SKU EAN(HandScanner) = Range("D21")
ArtMg = Range("B24")
1 Klärfall = Range("B32")
2 Klärfall = Range("B35")
Kommentarfeld KL = Range("B38")

Worksheets("Klärfall_Tabelle").Select
Worksheets("Klärfall_Tabelle").Range("A2").Select
If Worksheets("Klärfall_Tabelle").Range("A2").Offset(1, 0) <> "" Then
Worksheets("Klärfall_Tabelle").Range("A2").End(xlDown).Select
End If

ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Bemerkung
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = SKU
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = SKU / EAN
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = SpalteA
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = ErsterKlärfall
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = ZweiterKlärfall
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Kommentarfeld_KL

End Sub

(14.08.2022, 15:13)Pawelpopolski schrieb: [ -> ]Prinzipiell funktioniert es so

Sub Uebertragen()

    Dim wsQ As Worksheet
    Set wsQ = ThisWorkbook.Sheets("Tabelle2")
   
    Dim wsZ As Worksheet
    Set wsZ = ThisWorkbook.Sheets("Tabelle1")
   
    Dim lRowZ As Long
    lRowZ = wsZ.Cells(Rows.Count, 9).End(xlUp).Row
   
    With wsZ
        .Cells(lRowZ, 1) = wsQ.Cells(27, 2)
        .Cells(lRowZ, 2) = wsQ.Cells(21, 2)
        .Cells(lRowZ, 3) = wsQ.Cells(21, 4)
        .Cells(lRowZ, 4) = wsQ.Cells(34, 2)
        .Cells(lRowZ, 6) = wsQ.Cells(32, 2)
        .Cells(lRowZ, 7) = wsQ.Cells(35, 2)
        .Cells(lRowZ, 8) = wsQ.Cells(38, 2)
    End With
   
End Sub
funst leider nicht deine Version, warum auch immer !
Hallo,

da unklar ist, ob die letzte Zeile der jeweiligen Zielspalte immer gleich oder unterschiedlich ist, beide möglichen Lösungswege:

Code:
Sub KlaerfaelleUebergeben()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten die
' selbe ist, reicht diese Schleife
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
            .Cells(i, 2) = Tabelle2.Cells(21, 2)     'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
            .Cells(i, 3) = Tabelle2.Cells(21, 4)     'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
            ' u.s.w
        Next i
    End With
End Sub

Sub KlaerfaelleUebergeben1()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten eine
' andere ist, braucht es mehrere Schleifen
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
             .Cells(i, 2) = Tabelle2.Cells(21, 2)    'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
        Next i
       
        For i = 3 To .Cells(Rows.Count, 4).End(xlUp).Row
             .Cells(i, 3) = Tabelle2.Cells(21, 4)    'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
        Next i
        ' u.s.w.
    End With
End Sub

Gruß Uwe
(14.08.2022, 19:22)Egon12 schrieb: [ -> ]Hallo,

da unklar ist, ob die letzte Zeile der jeweiligen Zielspalte immer gleich oder unterschiedlich ist, beide möglichen Lösungswege:

Code:
Sub KlaerfaelleUebergeben()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten die
' selbe ist, reicht diese Schleife
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
            .Cells(i, 2) = Tabelle2.Cells(21, 2)     'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
            .Cells(i, 3) = Tabelle2.Cells(21, 4)     'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
            ' u.s.w
        Next i
    End With
End Sub

Sub KlaerfaelleUebergeben1()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten eine
' andere ist, braucht es mehrere Schleifen
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
             .Cells(i, 2) = Tabelle2.Cells(21, 2)    'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
        Next i
       
        For i = 3 To .Cells(Rows.Count, 4).End(xlUp).Row
             .Cells(i, 3) = Tabelle2.Cells(21, 4)    'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
        Next i
        ' u.s.w.
    End With
End Sub

Gruß Uwe Irgendwie verstehe ich deine Frage nicht nicht ganz? 
Es ist so das jede einzelne  Eingabe Zelle in meiner Tabelle2(Eingabe Formula )eine Feste zugewiesen Spalte hatte in tabelle1 so wie ich es am Anfang zu Eröffnung meines Trayts beschrieben hatte 
 
 Zelle(Tabele2) =  Spalte(Tapelle1)

(Tabelle2!= Zelle B21) zu Tabelle1 in (Spalte! B3:B)
(Tabelle2!= Zelle D21) zu Tabelle1 in (Spalte! C3:C)
(Tabelle2!= Zelle B24) zu Tabelle1 in (Spalte! D3:D)
(Tabelle2!= Zelle B27) zu Tabelle1 in (Spalte! A3:A)
(Tabelle2!= Zelle B32) zu Tabelle1 in (Spalte! F3:F)
(Tabelle2!= Zelle B35) zu Tabelle1 in (Spalte! G3:G)
(Tabelle2!= Zelle B38) zu Tabelle1 in (Spalte! H3H)

anders wüste ich es nicht wie ich es noch formulieren könnte  19

(14.08.2022, 19:22)Egon12 schrieb: [ -> ]Hallo,

da unklar ist, ob die letzte Zeile der jeweiligen Zielspalte immer gleich oder unterschiedlich ist, beide möglichen Lösungswege:

Code:
Sub KlaerfaelleUebergeben()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten die
' selbe ist, reicht diese Schleife
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
            .Cells(i, 2) = Tabelle2.Cells(21, 2)     'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
            .Cells(i, 3) = Tabelle2.Cells(21, 4)     'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
            ' u.s.w
        Next i
    End With
End Sub

Sub KlaerfaelleUebergeben1()
    Dim i As Long
   
' unter der Voraussetzung dass die letzte Zeile in allen Spalten eine
' andere ist, braucht es mehrere Schleifen
    With Tabelle1
        For i = 3 To .Cells(Rows.Count, 2).End(xlUp).Row
             .Cells(i, 2) = Tabelle2.Cells(21, 2)    'Tabelle2 Range "B21" zu Tabelle1 in Range B3:B
        Next i
       
        For i = 3 To .Cells(Rows.Count, 4).End(xlUp).Row
             .Cells(i, 3) = Tabelle2.Cells(21, 4)    'Tabelle2 Range "D21" zu Tabelle1 in Range C3:C
        Next i
        ' u.s.w.
    End With
End Sub

Gruß Uwe

Deine Version zeigt bei mir eine Fehlermeldung(Gelb) an  und sagt "Objekt erforderlich"
Hallo,

Tabelle2!= Zelle B21 --> korrekte Schreibweise: =Tabelle2!B21 ist eine Formel. Diese steht in einer Zelle!!
Damit fangen also die Unklarheiten an. Was soll da einer draus entnehmen.
Und "zu Tabelle1 in (Spalte! B3:B)"  hinten dran, weiß keiner was du uns damit sagen willst.

Beschreibe dein Problem z.B. so:

Ich trage in Tabelle2 (Modulname des Tabellenblattes) in Zelle/Range "B21" einen Wert ein und Dieser soll in Tabelle1 (Modulname des Tabellenblattes) in Spalte B ab Zeile 3 bis letzte Zeile in diese Zellen eingetragen werden. Da hast du recht schnell klare Antworten drauf die garantiert zu treffen.

Was ich jetzt befürchte ist, dass es sich aber nicht um Tabellenblätter und deren Modulnamen dreht, sondern um dynamische (formatierte) Tabellen - also .ListObjects.
Da braucht es am besten eine Beispieldatei mit den jeweiligen Tabellen und klaren Aussagen wo die Formeln hinsollen und wie die Eingangswerte mit dem erwünschten Ergebnis im Verhältnis stehen sollen.
Also ein paar Eingangswerte in die Ausgangstabelle und ein paar dazugehörige Ergebnisse in die Zieltabelle. Da kann dann auch jemand die Formeln dazu stricken.

Weil ich es gerade noch gesehen habe was du noch hinten dran ergänzt hast. Der Fehler liegt nicht in den beiden Prozeduren. Die funktionieren so wie ich es dir rein geschrieben habe. Da liegt das Problem wo anders. 

Gruß Uwe
Ok danke für deine Kritik! leider bin ich kein sehr guter erklär Bär und hab versucht so gut es gut zu erklären
Moin KeinErklärBär Wink

im Anhang findest Du meinen Versuch Dich verstanden zu haben. Probier mal aus.

Grüße
[attachment=44593]
(14.08.2022, 20:50)k-siebke schrieb: [ -> ]Ok danke für deine Kritik! leider bin ich kein sehr guter erklär Bär und hab versucht so gut es gut zu erklären

(14.08.2022, 20:50)k-siebke schrieb: [ -> ]Ok danke für deine Kritik! leider bin ich kein sehr guter erklär Bär und hab versucht so gut es gut zu erklären
Ich versuche das mal Direkt in meiner Tabelle zu erklären in dem ich die jeweiligen Zellen verknüpft habe 
Seiten: 1 2 3