Anzeige
Archiv - Navigation
1368to1372
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 verschmelzen und einfügen

Bereiche verschmelzen und einfügen
07.07.2014 12:53:27
Cäptn
Hallo zusammen,
hier erstmal eine Datei, die mien Problem (vereinfacht) darstellt.
Ich möchte die Werte der drei gleich großen Basisbereiche (denen ich gern Namen vergeben kann) in einem Rutsch -also nur ein Einfügevorgang- untereinander anordnen.
https://www.herber.de/bbs/user/91403.xlsm
Geht das vielleicht mit einem Array?
Das Besipeil ist vereinfacht. Eigentlich geht es um 12 Bereiche mit jeweils 200 Zeilen und 20 Spalten.
Vielen Dank,
Frank

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

Betreff
Datum
Anwender
Anzeige
eine Formellösung mittels Bereichsnamen ...
07.07.2014 14:34:58
der
Hallo Frank,
... und mit zwei Hilfsspalten, davon eine ganz ohne Formel und die andere mit einer MATRIXFormel.
Formel P2 nach unten kopieren und R2 nach rechts und links kopieren (die Hilfsspalten sind ausblendbar und können wie auch die Ergebnisspalten wo anders stehen.
Tabelle1

 BCDEFGHIJKLMNOPQRS
1             Bereiche0   
2             Ber_017 23
3  BASIS:         Ber_0214 44
4      19     Ber_0221 50
5      32     Ber_0328 76
6  23  45     Ber_04  89
7  44  76 45  Ber_05  213
8  50  68 86  Ber_06  45
9  76  52 89  Ber_07  19
10  89  42 90  Ber_08  32
11  213     457  Ber_09  45
12  45     67  Ber_10  76
13         55  Ber_11  68
14                52
15                42
16                19
17                32
18                45
19                76
20                68
21                52
22                42
23                  

Formeln der Tabelle
ZelleFormel
O2="Ber_"&TEXT(ZEILE(A1); "00")
P2{=WENNFEHLER(1+MAX(ZEILE(INDIREKT(O2;)))-ZEILE(INDIREKT(O2;))+P1;"")}
R2=WENN(ZEILE(A1)>MAX($P:$P); "";INDEX(INDIREKT(INDEX($O:$O;1+VERGLEICH(ZEILE(A1)-1;$P:$P;1)); ); ZEILE(A1)-INDEX($P:$P;VERGLEICH(ZEILE(A1)-1;$P:$P;1)); SPALTE(A1)))
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
AW: eine Formellösung mittels Bereichsnamen ...
07.07.2014 14:44:38
Cäptn
Hallo Werner, vielen Dank für die Lösung und Deine Mühe. Ich hätte vielleicht erwähnen sollen, daß das ganze innerhalb eines Makros ablaufen soll...mit einspaltigen Bereichen gelingt es mir auch, aber nicht mit mehrspaltigen. scheint kompliziert zu sein!
Dennoch vielen Dank!
Frank

AW: eine Formellösung mittels Bereichsnamen ...
07.07.2014 19:39:37
CitizenX
Hi,
füge folgenden Code ins Tabellenblatt(Rechtsklick Tabellenreiter-Code anzeigen-Code einfügen): Option Explicit Sub JoinMe() Dim oItem As Object, oSubItem As Object Dim z&, s&, nz&, ns&, maxCol& Dim oUnion As Range Dim out As Range Set out = Sheets("Tabelle2").Range("A1") 'Tabellenname und Bereich der Ausgabe anpassen For Each oItem In ThisWorkbook.Names If oItem.Name Like "Bereich*" Then If oUnion Is Nothing Then Set oUnion = oItem.RefersToRange If maxCol Name: Bereich & Nummer von 1-9 also "Bereich1;Bereich2... usw
wenn es mehr als 9 Bereiche sind und du die Reihenfolge einhalten möchtest, dann mußt du nach dem 9.ten Bereich mit: Bereich91;Bereich92 ...usw arbeiten
Da sonst die Auflistung der Namen nicht in der entsprechenden Reihenfolge geschieht.
VG
Steffen

Anzeige
Nachtrag :Code verbessert..
07.07.2014 19:58:00
CitizenX
Hi,
nimm mal diesen der ist besser:

Option Explicit
Sub JoinMe()
Dim oItem As Object, oSubItem As Object
Dim z&, s&, nz&, ns&, maxCol&, maxRow&
Dim oUnion As Range
Dim out As Range
Set out = Sheets("Tabelle2").Range("A1") 'Tabellenname und Bereich der Ausgabe anpassen
For Each oItem In ThisWorkbook.Names
If oItem.Name Like "Bereich*" Then
If maxCol 
..achte darauf dass du den Ausgabebereich noch anpasst(siehe Kommentar im Code)
VG
Steffen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige