Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren

Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren
01.11.2023 19:33:03
dado012
Hallo an alle,

ich würde einen VBA Code benötigen, um aus einer Eingabemaske ("Mappe 1") bestimmte Zellen in eine intelligente Tabelle in einer anderen Mappe ("Mappe2") zu speichern. Der Code steht in Mappe 1. Als erstes sollte Mappe 2 geöffnet werden und dann eine neue Zeile eingefügt werden. Danach sollten die gewünschten Zellen aus Mappe 1 ausgeschnitten und als Wert ihn Mappe 2 eingefügt werden. Als letztes solle sich Mappe 2 noch speichern. Ich habe mir ein entsprechendes Makro aufgenommen und da funktioniert eigetlich sehr gut, allerdings kann ich da leider nichts ändern. Ich habe eine neue Zelle aus Mappe 1 in Mappe 2 speichern wollen, leider habe ich den Code nicht entsprechend umändern können bzw. konnte ich die neue Zeile nur ganz hinten einfügen und nicht dort wo es sinn macht. Es wäre sehr toll wenn mir jemand den Weg zu meinen Ziel zeigen könnte. Folgenden Code habe ich mit dem Makro aufgenommen:

Gibt es einen einfacheren bzw. besseren code? Also, wenn ich mittendrin daraufkomme, dass ich etwas vergessen habe. Das ich dann einfach das irgendwo ergänzen kann?

Dankeschön und LG Dado

https://www.herber.de/bbs/user/163965.xlsm

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren
01.11.2023 20:09:55
GerdL
Hallo Dado!

Funktioniert der u.g. Code ?
Inwiefern willst du ergänzen oder flexibilisieren?
Sub Schaltfläche1_Klicken()


Dim wbkZiel As Workbook, wsZiel As Worksheet, wswQuelle As Worksheet

Application.ScreenUpdating = False
ChDir "C:\Doc\Desktop\Test"

Set wbkZiel = Workbooks.Open(Filename:="C:\Doc\Desktop\Test\Mappe2.xlsm")
Set wsZiel = wbkZiel.Sheets("Daten ZBau")
Set wsQuelle = ThisWorkbook.Worksheets("Tabelle1") 'ggf. anpassen

wsZiel.Rows("2:2").ListObject.ListRows.Add (1)

wsQuelle.Range("B38:C38").Copy
wsZiel.Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

wsQuelle.Range("F38:K38").Copy
wsZiel.Range("B2").PasteSpecial Paste:=xlPasteValues

wsQuelle.Range("D11:K11").Copy
wsZiel.Range("CD2").PasteSpecial Paste:=xlPasteValues

Application.CutCopyMode = False

wbkZiel.Save
wsQuelle.Range("B12:K15,D11:K11").ClearContents

End Sub

Gruß Gerd
Anzeige
AW: Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren
01.11.2023 20:38:16
dado012
Hallo Gerd,

ich habe deinen Code kurz probiert und muss sagen, dass er PERFEKT ist. Genau das habe ich mir erwünscht vielen lieben Dank. Dein Code macht alles was ich momentan benötige, du hast mir Herausforderungen gelöst die ich garnicht gestellt habe (z.B. Dateinamen von Mappe 1 ist egal, bei mir war der fix vorgegeben). PERFEKT Sag ich nur.

Vielen lieben Dank nochmal. :-)
AW: Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren
03.11.2023 10:48:10
dado012
Hallo,

ist es möglich, dass nur beschriebene Zellen aus Mappe1 in Mappe2 kopieret werden. Ich meine, prüfen ob C18 bis C33 einen Wert enthält, die Zellen die beschrieben sind sollen mit der dazugehörigen Spalte B kopiert werden. Das gleiche für die verbundenen Zellen E18:G18 bis E33:G33. Die beschriebenen Zellen sollen der Reihe nach in Mappe2 mit der dazugehörigen Spalte D kopiert werden. Momentan kopiere ich alles und ich habe in Mappe 2 viele leere Spalten und dazwischen wieder beschriebene Spalten. Ziel wäre es die beschriebenen nach vorne zu bringen und die leeren nach hinten. .

Alternativ wäre es möglich ich in einer intelligenten Tabelle im Bereich von AB2 bis BK2 (2 Zellen sind eine Einheit), die beschriebenen Zellen nach vorne zu bringen und die leeren nach hinten?

LG Dado
Anzeige
AW: Per VBA Zeilen von einer Mappe in eine andere Mappe kopieren
03.11.2023 13:01:57
dado012
Hallo,

folgendes habe ich zusammengebracht, leider bekomme ich eine Fehlermeldung: Laufzeitfehler ´1004´: Die Select-Methode des Range-Objektes konnte nicht ausgeführt werden. Ich weiß leider nicht was geändert gehört. Kann mir bitte jemand behilflich sein.


Sub kopieren()



Dim wbkZiel As Workbook, wsZiel As Worksheet, wswQuelle As Worksheet

Application.ScreenUpdating = False
ChDir "C:\Doc\Desktop\Montageberichte"

Set wbkZiel = Workbooks.Open(Filename:="C:\Doc\Desktop\test\test.xlsm")
Set wsZiel = wbkZiel.Sheets("Daten ZBau")
Set wsQuelle = ThisWorkbook.Worksheets("testen") 'ggf. anpassen

wsZiel.Rows("2:2").ListObject.ListRows.Add (1)

wsQuelle.Range("AO263:EL263").Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.Delete Shift:=xlToLeft

wsQuelle.Range("Q263:EF263").Copy
wsZiel.Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Application.CutCopyMode = False

wbkZiel.Save
wsQuelle.Range("B18:I33,B44,G44:K44").ClearContents

End Sub
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige