Anzeige
Archiv - Navigation
1836to1840
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

Vollständige Übertragung

Vollständige Übertragung
09.07.2021 16:08:02
kk86
Hallo zusammen,
bei meinem bisherigen Tool wird ein Ordner gewählt, in dem sich Angebote befinden.
Diese Angebote (Tabellenblatt 1 und 2) werden dann in das Tool eingelesen und einheitlich im Tool (ebenfalls auf Tabellenblatt 1 und 2) dargestellt.
Leider habe ich noch folgendes Problem:
Im Angebot auf dem zweiten Tabellenblatt ("Material") befindet sich unter der Tabelle noch eine Zeile mit "Summe", diese wird mit dem bestehenden Code leider nicht übertragen.
Ebenfalls werden die oberen Rahmenlinien bei "Lieferant", "Bauteilbezeichnung" und "Artikelnummer" auch nicht mit übertragen.
Gibt es hierzu auch eine Lösung, sodass immer die Formatierung aus der Quelle und nur die Werte (keine Formeln) übertragen werden?
Wäre super wenn mir jemand den korrigierten Code mitteilen könnte.
Danke und VG
Tool: https://www.herber.de/bbs/user/147023.xlsm
Angebot: https://www.herber.de/bbs/user/147024.xlsx

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vollständige Übertragung
09.07.2021 22:02:02
ralf_b
Hallo,
Ich habe deine Antwort gerade erst gelesen.
Die Summenzeile wird nicht übernommen weil ich currendregion benutzt habe. das schließt nur den angrenzenden Bereich um die benannte Zelle ein.
mit der Summenzeile würde es so gehen. Hier mal eine Variante mit copy.
wksX.Cells(9, "B").Resize(lastrowQuelle - 9 + 1, 6).Copy wksN.Cells(lastrowZiel, "B")
Aber wenn du schon ein Tool baust, dann solltest du solche Bereichspielereien schon selbst drauf haben.
Schau dir z.b. die Usedrange an oder die Bereichsgrößenanpassung mit Range.resize(zeilen,spalten) und Range.offset(zeilen,spalten)
mit pastespecial kannst du wahlweise auch nur die Formate oder nur die Werte und noch andere Kombinationen übertragen.
auch mehrfach pastespecial geht wenn man die passende Kombi nicht hat.
z.b.
wksX.Cells(5, "B").Resize(3).Copy
With wksN.Cells(lastrowZiel, "D")
.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End With
gruß rb
Anzeige
AW: Vollständige Übertragung
13.07.2021 09:35:48
kk86
Hallo Ralf,
nochmal vielen Dank für die Rückmeldung und Erklärungen.
Die Bereichsspielereien habe ich dank dir nun verstanden und für meine Anwendung richtig definiert:
Set wksN = ThisWorkbook.Sheets("Material") 'Zieltabelle
Set wksX = wbX.Sheets(2)
lastrowQuelle = wksX.Cells(wksX.Rows.Count, "B").End(xlUp).Row
lastrowZiel = wksN.Cells(wksN.Rows.Count, "B").End(xlUp).Row + 2
wksN.Cells(lastrowZiel, "B").Resize(3).Value = wksX.Cells(5, "B").Resize(3).Value
wksN.Cells(lastrowZiel, "D").Resize(3).Value = wksX.Cells(5, "I").Resize(3).Value
lastrowZiel = wksN.Cells(wksN.Rows.Count, "B").End(xlUp).Row + 1
wksX.Cells(1, "B").Resize(lastrowQuelle - 1 + 1, 35).Copy wksN.Cells(lastrowZiel, "B")
Leider verstehe ich noch folgendes nicht:
Wie bringe ich jetzt in diesen Code den Befehl rein, dass die Formatierung aus der Quelle und nur die Werte (keine Formeln) übertragen werden?
Danke vorab für deine Rückmeldung und VG
Anzeige
AW: Vollständige Übertragung
13.07.2021 17:40:35
ralf_b
pastespecial !

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige