Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1344to1348
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

VBA Einzelposten update

VBA Einzelposten update
14.01.2014 14:37:51
Dip
Guten Tag Allerseits,
Gerne würde ich folgende Problemstellung in das Forum einbringen, in der Hoffnung, jemand kennt die Lösung dazu :-)
Hier die Musterdatei:
https://www.herber.de/bbs/user/88802.xlsx
Im Blatt "Input" werden in Spalte A verschiedene Positionen manuell eingetragen. Von Spalte C bis K verschiedene Kriterien. Ab Spalte M werden die Werte betreffend Budget, Forecast und IST eingegeben.
Im Blatt "Sum" sollen nun die Positionen mit den entsprechenden Kriterien und Werte je Jahr und je Typ (BUD/FC/IST) aufgelistet werden, automatisch.
Diese Auflistung dient als "Einzelpostenbericht", um die Daten anschliessend mit Pivot auswerten zu können.
Ich habe es mit verschiedenen Funktionen (Index, Summewenns etc.) versucht, leider ohne Erfolg.
Wäre es möglich, dies mittels VBA zu lösen?
Wichtig zu erwähnen ist, dass die Spalten bzw. Zeilen nicht fix sein sollten, da zB. weitere Kriterien hinzugefügt werden könnten. Und weitere Jahre werden im Laufe hinzugefügt (2010, 2011, etc...)
Über jeden Hinweis, Hilfe bin ich Euch sehr dankbar!
Beste Grüsse
Patrick

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
nur ne Anmerkung
14.01.2014 14:48:21
Rudi
Hallo,
leere Spalten in einer Liste können absolut tödlich sein.
Sortiere mal spaßeshalber Blatt sum nach Wert. Also nur eine Zelle in N markieren und auf Sortieren klicken.
Dito in Input.
Gruß
Rudi

AW: nur ne Anmerkung
14.01.2014 15:28:04
Dip
Hallo Rudi,
Leider kann ich deine Anmerkung nicht nachvollziehen, wie es mir weiterhelfen soll?
Die Tabelle im Blatt "Sum" ist das Ergebnis, wie es schlussendlich aussehen soll. Die Daten im Blatt "Sum" sollen automatisch aus den Daten im Blatt "Input" generiert werden...
Grüsse
Patrick

AW: nur ne Anmerkung
14.01.2014 15:41:41
Rudi
Hallo,
Leider kann ich deine Anmerkung nicht nachvollziehen, wie es mir weiterhelfen soll?
das sollte sie auch gar nicht. Deshalb habe ich die Frage als offen markiert.
Sie sollte nur dir nur klarmachen, wie hirnrissig gefährlich dein Tabellenaufbau ist.
Ein falscher Klick und du kannst das nie wieder restaurieren.
Gruß
Rudi

Anzeige
AW: VBA Einzelposten
14.01.2014 15:47:42
Dip
...an den leeren Spalten im Blatt "Input" soll es nicht scheitern, es soll das aus- bzw. einblenden von bereits abgelaufenen Perioden ermöglichen...
Ich bin für jede Art von Lösung offen.
Grüsse
Patrick

INDEX/REST/KÜRZEN-Anwendung
14.01.2014 20:04:16
Erich
Hi Patrick,
die auch von Rudi schon kritisch bewerteten Leerspalten haben die Formeln eher weniger vereinfacht...
input

 ABLMNOPQRS
1   2008a2008b2008c 2009a2009b2009c
2Position  BUDxFCIST BUDFCyISTz
3Pos. 1          818        313        557          186        132        404
4Pos. 2          684        605        829          915        537        747
5Pos. 3          750        690        744          830        364        557
6Pos. 4          582        771        667            45        196        428
7Pos. 5          631          88        728          560        203 ttt
8sdasdf             1           2           3             4           5           6


sum

 ABLMN
1Position JahrTypWert
2Pos. 1 2008aBUDx818
3Pos. 2 2008aBUDx684
4Pos. 3 2008aBUDx750
5Pos. 4 2008aBUDx582
6Pos. 5 2008aBUDx631
7sdasdf 2008aBUDx1
8Pos. 1 2008bFC313
9Pos. 2 2008bFC605
10Pos. 3 2008bFC690
11Pos. 4 2008bFC771
12Pos. 5 2008bFC88
13sdasdf 2008bFC2
14Pos. 1 2008cIST557

Formeln der Tabelle
ZelleFormel
A2=WENN(ZEILE(A1)<=6*ANZAHL2(input!A$3:A$999); INDEX(input!A$3:A$999;1+REST(ZEILE(A1)-1;ANZAHL2(input!A$3:A$999))); "")
L2=WENN(A2="";"";INDEX(input!$M$1:$T$1; 1+KÜRZEN((ZEILE(A1)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A1)-1)/3/ANZAHL2(input!A$3:A$999))))
M2=WENN(A2="";"";INDEX(input!$M$2:$T$2; 1+KÜRZEN((ZEILE(A1)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A1)-1)/3/ANZAHL2(input!A$3:A$999))))
N2=WENN(A2="";"";INDEX(input!$M$3:$T$999; 1+REST(ZEILE(A1)-1;ANZAHL2(input!A$3:A$999)); 1+KÜRZEN((ZEILE(A1)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A1)-1)/3/ANZAHL2(input!A$3:A$999))))
A3=WENN(ZEILE(A2)<=6*ANZAHL2(input!A$3:A$999); INDEX(input!A$3:A$999;1+REST(ZEILE(A2)-1;ANZAHL2(input!A$3:A$999))); "")
L3=WENN(A3="";"";INDEX(input!$M$1:$T$1; 1+KÜRZEN((ZEILE(A2)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A2)-1)/3/ANZAHL2(input!A$3:A$999))))
M3=WENN(A3="";"";INDEX(input!$M$2:$T$2; 1+KÜRZEN((ZEILE(A2)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A2)-1)/3/ANZAHL2(input!A$3:A$999))))
N3=WENN(A3="";"";INDEX(input!$M$3:$T$999; 1+REST(ZEILE(A2)-1;ANZAHL2(input!A$3:A$999)); 1+KÜRZEN((ZEILE(A2)-1)/ANZAHL2(input!A$3:A$999)) +KÜRZEN((ZEILE(A2)-1)/3/ANZAHL2(input!A$3:A$999))))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
@ErichG. INDEX/REST/KÜRZEN-Anwendung
18.01.2014 13:23:18
Dip
Hallo Erich,
Ich habe deine Formel in meinem Arbeitsblatt integriert und es funktioniert wunderbar!
Die Summen werden alle richtig berechnet und neue Positionen und folgende Jahren können problemlos hinzugefügt werden.
Ich danke Dir recht herzlich für Deine Unterstützung Erich!
Ich wünsche Dir noch ein schönes Weekend und Alles Gute!
Beste Grüsse
Patrick

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige