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.

Ebene multiplizieren
#1
Hallo Zusammen,

ich brauche eure Hilfe.
ich habe eine größere Tabelle mit mehreren Tausend Einträgen.
Hier sind Teile enthalten, welche wieder herum aus Unterteile besteht.
Nun muss ich die Gesamtanzahl herausfinden von den Unterteilen.
Hier muss dann jede Ebene mit der direkten Ebene darüber multipliziert werden.
Also Ebene 3 multipliziert mit Ebene 2 und dann mit Ebene 1.
Die Tabelle kann bis zu 15 Ebenen haben.

Ich habe hierzu ein vereinfachtes Beispiel angehängt. Hier geht es darum die Gesamtanzahl auszurechnen.

Ich würde mich sehr freuen wenn ihr mir weiterhelfen könnt.

Vielen Dank schon im Voraus für eure Antworten

Gruß Daniel


Angehängte Dateien
.xlsx   Stückliste.xlsx (Größe: 11,19 KB / Downloads: 14)
Antworten Top
#2
Code:
Sub M_snb()
  sn = Range("A4:C16")
 
  For j = 2 To UBound(sn)
    If Len(sn(j, 1)) > Len(sn(j - 1, 1)) Then y = sn(j - 1, 3)
    If Len(sn(j, 1)) > 1 Then sn(j, 3) = sn(j, 3) * y
  Next
 
  Range("D4:D16") = Application.Index(sn, 0, 3)
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#3
Hallo Daniel,

basierend auf deiner Beispieldatei hier ein Vorschlag für eine Formellösung (hier mal für 5 Ebenen):
Arbeitsblatt mit dem Namen 'Tabelle1'
BCDEF
3EbeneBauteilAnzahlGesamtanzahlGesamtanzahl
41Schweißteil555
52Arm155
62Unterarm155
72Flansch21010
83Welle11010
91Antrieb333
102Stirnrad266
112Stirnrad41212
122Welle61818
131Antrieb2333
142Stirnrad2266
152Stirnrad2266
162Welle2133

ZelleFormel
F4=D4*
WENNFEHLER
(VERWEIS(2;1/($B$4:B4=B4-1);$D$4:D4);1)*
WENNFEHLER
(VERWEIS(2;1/($B$4:B4=B4-2);$D$4:D4);1)*
WENNFEHLER
(VERWEIS(2;1/($B$4:B4=B4-3);$D$4:D4);1)*
WENNFEHLER
(VERWEIS(2;1/($B$4:B4=B4-4);$D$4:D4);1)
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

(Formel nach unten ziehen)

Bei mehr Ebenen muss die Formel entsprechend erweitert werden, was bei einer größeren Anzahl von Ebenen schnell unüberischtlich / unhandlich wird.

Da käme dann wohl eher eine Lösung mit Hilfsspalten in Frage (für jede Ebene wird eine Hilfsspalte benötigt)
Die Hilfsspalten kannst du ja ausblenden.

Siehe angehängte Beispieldatei

Gruß
Fred


Angehängte Dateien
.xlsx   Ebene multiplizieren_fs3.xlsx (Größe: 25 KB / Downloads: 0)
Antworten Top
#4
Hallo Daniel,

oder ohne Hilfsspalte:

=WENN(LÄNGE(A4)=1;C4;C4*INDEX(D:D;AGGREGAT(14;6;ZEILE($A$4:A4)/(LÄNGE($A$4:A4)=LÄNGE(A4)-1);1)))


Angehängte Dateien
.xlsx   Stückliste.xlsx (Größe: 12,5 KB / Downloads: 1)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top


Gehe zu:


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