Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

[Excel] Zeile aus Tabellenblatt kopieren
#1
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.

.xls   526732.xls (Größe: 59 KB / Downloads: 49)
Gruß
Peter
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste