Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1860to1864
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

Bereiche kopieren einfügen

Bereiche kopieren einfügen
27.12.2021 15:45:42
Guesa
Hallo Forum
in folgender Datei wird eine Zusammenfassung aus 3 Tabellenblätter erstellt, soweit so gut.
Jetzt möchte ich gerne die Anzahl Positionen dazu nehmen, dazu steht die Formel Anzahl in F1 und als Text in D1 (ET1, ET2 und ET3)
Wenn ich jetzt die Zusammenfassung starte wird auch alles richtig kopiert, bis auf die Positionen, da wird immer die Null eingetragen.
Wie müsste der Code geändert werden damit die richtigen Positionen eingetragen werden
Schon mal ein Danke für Eure Hilfe
Gruß, Guesa
https://www.herber.de/bbs/user/150019.xlsm

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereiche kopieren einfügen
27.12.2021 16:21:33
ChrisL
Hi

Sub zusammenfassung()
Dim wsQ As Worksheet, wsZ As Worksheet
Dim arWS As Variant, i As Integer
Set wsZ = Worksheets("Bestellung")
arWS = Array("ET1", "ET2", "ET3")
Application.ScreenUpdating = False
For i = LBound(arWS) To UBound(arWS)
Set wsQ = Worksheets(arWS(i))
With wsZ.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
wsQ.Range("B1:D" & wsQ.Cells(Rows.Count, 2).End(xlUp).Row).Copy .Cells
.Offset(0, 2).Value = wsQ.Range("D1").Value
End With
Next i
End Sub
Die Darstellung ist aus einer reinen Daten-Optik nicht ideal. Wenn möglich würde ich auf Zwischentitel verzichten und die Etage als separate Spalte darstellen.
cu
Chris
Anzeige
AW: Bereiche kopieren einfügen
27.12.2021 17:13:40
Guesa
Hallo Chris
passt wunderbar, Danke Dir
Gruß, Guesa
AW: Bereiche kopieren einfügen
27.12.2021 16:22:44
Yal
Hallo Guesa,
eigentlich kannst Du aus den 2 Formeln eine machen:
Nehmen den =ANZAHL($A$3:$A$200) aus F1
und füge es anstatt F1 in der Formel von D1:
=TEXT(ANZAHL($A$3:$A$200);0) & " Positionen"
Hilft aber für die Zusammenfassung wenig. Du musst anstatt "alles", nur die Werte einfügen:

Sub zusammenfassung()
Dim wQ As Worksheet ' Quell-Worsheet
Dim wZ As Worksheet ' Ziel-Worksheet
Application.ScreenUpdating = False
Set wZ = Worksheets("Bestellung")
For Each wQ In Worksheets
If wQ.Name  wZ.Name Then
wQ.Range(wQ.Range("D1"), wQ.Cells(Rows.Count, 2).End(xlUp)).Copy
wZ.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
End If
Next
Application.ScreenUpdating = True
End Sub
_ anstatt With verwende ich Variable vom Typ Worksheet-Objekt
_ den Range "B1:D"-Ende vom Spalte B ist "umgedreht": "D1:B"-Ende von Spalte B und somit kompakter in einem "von Bereich bis Bereich"-Bereich reingebracht (ist ein Bischen fiess ;-)
_ alles was sich wiederholt, wird in einer Schleife reingebracht: für alle Worksheets, solang es nicht die Zielworksheet ist, ...
_ copy/paste value erfolgt in zwei Schritte.
VG
Yal
Anzeige
AW: Bereiche kopieren einfügen
27.12.2021 17:16:45
Guesa
Hallo Yal
Danke Dir, und sorry, hatte nicht erwähnt das in der original Datei noch andere Blätter sind.
Die Formel nehme ich aber auch gerne
Gruß, Guesa
AW: Bereiche kopieren einfügen
27.12.2021 18:35:20
Yal
Hallo Guesa,

If Left(wQ.Name, 2) = "ET" Then
Anstatt

If wQ.Name  wZ.Name Then
Um die Formeln im Bestellblatt zu verwenden, müsste es andere Formel sein:
=ZÄHLENWENN(...
VG
Yal

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige