Clever-Excel-Forum

Normale Version: Zeile in andere Tabelle kopieren via VBA
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hi,

(22.06.2016, 15:02)Crazy Tom schrieb: [ -> ]bei mir höre ich es deutlich klappern...!

eben! In dem Makro steht nichts drin, was zu einem Nicht-Funktionieren führen würde.

Ich vermute die Blattnamen sind anders und wurden im Makro nicht angepasst, oder die Spalte B ist nicht so weit gefüllt wie die anderen.
Hallo Ralf

... oder ein Blattschutz drin, oder, oder, oder...
vielleicht lässt er uns ja noch an einer genaueren Fehlerbeschreibung teilhaben... :21:

MfG Tom
Hallo zusammen,

tut mir leid - die Formel funktioniert doch! :) Ich habe nur einen Fehler beim Kopieren gemacht.  Jedoch bin ich auf ein weiteres kleines Problem gestoßen:

Die neuen Datensätze werden nun eingefügt, allerdings mit mehr als 50 Zeilen Abstand zu den ursprünglichen Daten der anderen Tabelle. Ich habe alle leeren Felder einmal überprüft, hier sind keine Inhalte, die möglicherweise mit hätten kopiert werden können. Hier einmal der aktuelle Code:

Sub KopiereBereich()
Dim Quelltab As Worksheet
Dim Zieltab As Worksheet
Dim Zelle As Range
Dim lngZiel As Long
Dim Zaehler As Long
Zaehler = 1
Bereich = "B5:AJ1000"
Set Quelltab = ActiveWorkbook.Worksheets("Tabelle1")
Set Zieltab = ActiveWorkbook.Worksheets("Tabelle2")
With Zieltab
       lngZiel = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
       Quelltab.Range("B5:AJ200").Copy
       .Range("B6" & lngZiel).PasteSpecial xlPasteValues
   End With
   Application.CutCopyMode = False
End Sub

Vielen Dank, falls sich noch jemand meldet! VBA scheint noch nicht so ganz meine Stärke zu sein :/
Hi,

(27.06.2016, 12:37)DavidHans schrieb: [ -> ]Die neuen Datensätze werden nun eingefügt, allerdings mit mehr als 50 Zeilen Abstand zu den ursprünglichen Daten der anderen Tabelle. Ich habe alle leeren Felder einmal überprüft, hier sind keine Inhalte, die möglicherweise mit hätten kopiert werden können.

gestern hatte ich so was ähnliches, da hatte ich im Ziel-Blatt eine intelligente Tabelle drin mit Leerzeilen am Ende. Dann hat es die neuen Zeilen nach den Leerzeilen eingefügt.
Danke für den Tipp, aber es handelt sich leider nicht um eine intelligte Tabelle...

LG,
David
Hallo David,

wenn ich das richtig verstanden habe, reicht das:

Code:
Sub KopiereBereich()
 Dim Quelltab As Worksheet
 Dim Zieltab As Worksheet
 Set Quelltab = ActiveWorkbook.Worksheets("Tabelle1")
 Set Zieltab = ActiveWorkbook.Worksheets("Tabelle2")
 Quelltab.Range("B5:AJ200").Copy
 Zieltab.Cells(Rows.Count, 2).End(xlUp).Offset(1).PasteSpecial xlPasteValues
 Application.CutCopyMode = False
End Sub

Füge Bei Deinem jetzigen Code mal folgende Zeile ein: Wink

MsgBox "B6" & lngZiel

Das wäre dann die angesteuerte Zelladresse.

Gruß Uwe
Hallo Uwe,

ich verstehe nicht recht. Ja, Dein Code erzielt das gleiche Erbgenis. Aber warum sollte ich eine Message Box einfügen?

Vielen Dank und beste Grüße,
David
Hallo,

Zitat:Aber warum sollte ich eine Message Box einfügen?

ganz vielleicht, ... damit Du siehst wo Dein Code hinrennt?
Tut mir leid, ich bin wirklich kein Experte, wenn es zu VBA kommt. Ich habe gerade einmal versucht, den Code zu ändern, es kommt aber immer zu einem Bug. Könnte mir da jemand eventuell helfen? :)

LG,
David
Hallo David,

(27.06.2016, 15:54)DavidHans schrieb: [ -> ]Tut mir leid, ich bin wirklich kein Experte, wenn es zu VBA kommt. Ich habe gerade einmal versucht, den Code zu ändern, es kommt aber immer zu einem Bug. Könnte mir da jemand eventuell helfen? :)

hier #7 hat Dir Tom einen kompletten und funktionierenden Code geschrieben. Wenn Du den dann abänderst wie jetzt zuletzt gezeigt, brauchst Du Dich nicht wundern.
Und mein vorhin geposteter Code hier #16 sollte auch funktionieren. Wink

Gruß Uwe
Seiten: 1 2 3