Clever-Excel-Forum

Normale Version: [Excel] Zeile aus Tabellenblatt kopieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

immer wieder tauchen solche oder ähnliche Fragen auf:
Zitat:Ich habe ein Tabellenblatt, in dem in Spalte B eine Menge eingetragen wird. Wenn dort eine Zahl eingetragen wird, dann soll die ganze Zeile in ein anderes Tabellenblatt kopiert werden.

Dafür gibt es, wie so oft in Excel, mehrere Möglichkeiten.

Eine Variante ist die Nutzung einer Matrixformel, die auch in der angehängten Beispieldatei enthalten ist.

Die Ausgangstabelle

Arbeitsblatt mit dem Namen 'Tabelle1'
ABC
1ArtikelMengePreis
2A1610
3A2 20
4A3130
5A4 40
6A5 50
7A6260
8A7170
9A8 80
10A9390
11A105100
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

Eine der Zieltabellen (Tabelle2):

Arbeitsblatt mit dem Namen 'Tabelle2'
ABC
8ArtikelMengePreis
9A8610
10A3130
11A6260
12A7170
13A9390
14A105100

ZelleFormel
A9=WENN(ZEILE(Tabelle1!1:1)>ZÄHLENWENN(Tabelle1!$B$2:$B$20;">0");"";INDEX(Tabelle1!A:A;KKLEINSTE(WENN(Tabelle1!$B$2:$B$20>0;ZEILE(Tabelle1!$2:$20));ZEILE(A1))))
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

Die Formel in A9, die mit Strg-Shift-Enter abgeschlossen werden muss, kann dann nach rechts und nach unten kopiert werden.

Überwacht wird der Bereich von B2 bis B11 - das kann natürlich entsprechend angepasst werden.

Wenn nur Zeilen übernommen werden sollen, die in Spalte B eine bestimmte Menge aufweisen, dann reicht eine kleine Änderung der Formel:

=WENN(ZEILE(Tabelle1!1:1)>ZÄHLENWENN(Tabelle1!$B$2:$B$20;1);"";INDEX(Tabelle1!A:A;KKLEINSTE(WENN(Tabelle1!$B$2:$B$20=1;ZEILE(Tabelle1!$2:$20));ZEILE(A1))))

wobei auch in diesem Fall die Formel mit Strg-Shift-Enter abgeschlossen werden muss.

In der angehängten Beispielsdatei sind mehrere Varianten dargestellt:

Tabelle2: Es werden die Zeilen übernommen, bei denen die Menge in Spalte B größer 0 ist

Tabelle3: Es werden die Zeilen übernommen, bei denen die Menge in Spalte B gleich 1 ist

Tabelle4: Es werden die Zeilen übernommen, bei denen die Menge zwischen einer frei definierbaren Ober- und Untergrenze liegen

Tabelle5: Es werden die Zeilen übernommen, bei denen die Artikelnummer einer frei wählbaren Artikelnummer entspricht und die Menge einen frei wählbaren Wert übersteigt.

Allerdings sind Matrixformeln rechenintensiv, d.h. wenn der zu überwachende Bereich sehr groß ist, dann wäre die Nutzung einer VBA-Lösung ratsam.
[attachment=74]