Wert nicht übernehmen, wenn...
#1
Hallo Zusammen,

ich hab schon mehrere Excelforen durchforstet, jedoch habe ich nirgendwo mein Problem entdeckt. Ich hoffe ihr könnt mir helfen.

Ich habe eine Tabelle, welche vereinfacht folgendermaßen aussieht:

A1 = Teilwert
A2 = Rechnung
A3 = Storno
A4 = Rechnung
A5 = Teilwert
A6 = Teilwert
A7 = Storno
A8 = Teilwert
A9 = Rechnung
A10 = Teilwert

Ich bräuchte eine Formel, welche alle Zellen mit dem Wert "Teilwert" ausschließt wenn dieser vor einer "Rechnung" auftaucht.
In dem Fall, sollte das Ergebnis wie folgt sein:


A1 = ""
A2 = Rechnung
A3 = Storno
A4 = Rechnung
A5 = ""
A6 = ""
A7 = Storno
A8 = ""
A9 = Rechnung

A10 = Teilwert


Hintergrund ist, dass die Teilbeträge schon in der Rechnung enthalten sind, und dadurch die Teilbeträge hinfällig sind.
Schön wäre auch wenn die leere Zeilen "", gelöscht werden, bzw. nach oben rücken.
Ich hoffe ihr könnt mir helfen Smile
Top
#2
Hallo,

Deine Frage ist nicht eindeutig, denn wo Text steht, kann keine Formel stehen (geht schon, wird hier aber außer acht gelassen!).
In der Spalte B könnte man aber Deinen Wunsch dann umsetzten.

x ja
x nein
x vielleicht
VG
von René und seinen 3 Gehirnzellen

Top
#3
Hi,

Ja in Spalte B kann die Formel stehen Smile
Top
#4
Hallo,

ist dann doch C geworden (mit Hilfsspalte).
In Ermangelung von AGGREGAT(), geht nur eine Matrixformel zum "einsammeln".

Arbeitsblatt mit dem Namen 'Tabelle1'
 ABC
1Teilwert2Rechnung
2Rechnung1Storno
3Storno1Rechnung
4Rechnung1Storno
5Teilwert2Rechnung
6Teilwert2Teilwert
7Storno1Teilwert
8Teilwert2 
9Rechnung1 
10Teilwert1 
11Teilwert1 
12 0 
13 0 
14 0 
15 0 
16 0 
17 0 
18 0 
19 0 
20 0 

ZelleFormel
B1=WENN(ZÄHLENWENN(A1:$A$20;"Rechnung");1;0)+(A1="Teilwert")
C1{=WENNFEHLER(INDEX($A$1:$A$20;KKLEINSTE(WENN($B$1:$B$20=1;ZEILE($A$1:$A$20));ZEILE(A1)));"")}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
VG
von René und seinen 3 Gehirnzellen

[-] Folgende(r) 1 Nutzer sagt Danke an silex1 für diesen Beitrag:
  • miamitony
Top
#5
Hallo,

hier noch eine AGGREGAT-Lösung:
AB
1TeilwertRechnung
2RechnungStorno
3StornoRechnung
4RechnungStorno
5TeilwertRechnung
6Teilwert
7Storno
8Teilwert
9Rechnung
10Teilwert
11Teilwert

ZelleFormel
B1=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE($A$1:$A$20)/(($A$1:$A$20<>"Teilwert")*($A$1:$A$20<>""));ZEILE(A1)));"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Gruß
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:
  • miamitony
Top
#6
Thumbs Up 
Super vielen Dank :19:
Kannst du mir vielleicht sagen, wie die Formel aussehen würde, wenn ich die rausgelöschten Zeilen doch anzeigen lasse?
Also dass die Zeilen nicht hoch rutschen

Danke
Top
#7
Das ist ja eigentlich noch einfacher:
AB
1Teilwert
2RechnungRechnung
3StornoStorno
4RechnungRechnung
5Teilwert
6Teilwert
7StornoStorno
8Teilwert
9RechnungRechnung
10Teilwert
11Teilwert

ZelleFormel
B1=WENN(A1="Teilwert";"";A1)
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Gruß
Michael
Top
#8
Dann geht auch B

=WENN(WENN(ZÄHLENWENN(A1:$A$20;"Rechnung");1;0)+(A1="Teilwert")=1;A1;"")
VG
von René und seinen 3 Gehirnzellen

[-] Folgende(r) 1 Nutzer sagt Danke an silex1 für diesen Beitrag:
  • miamitony
Top
#9
Ihr seid meine Helden. :18: 
Ich danke euch vielmals! Smile
Top
#10
Hi silex1,

mir ist gerade aufgefallen, dass mit deiner Formel alle Werte nach der letzten Rechnung ausgeschlossen werden, bis auf Teilwerte.
Bsp.

A1 = Teilwert
A2 = Rechnung
A3 = Teilwert
A4 = Storno
A5 = Teilwert
A6 = Rechnung
A7 = Teilwert
A8 = Storno


So sollte es aussehen
A1 =
A2 = Rechnung
A3 =
A4 = Storno
A5 =
A6 = Rechnung
A7 = Teilwert
A8 = Storno

VG
Top


Gehe zu:


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