Office - Word, Excel und Co. 9.753 Themen, 41.598 Beiträge

VBA Frage

aristoteles / 3 Antworten / Baumansicht Nickles

Hallo,

ich habe eine Frage an Excel VBA Freaks. Ich habe eine Excel-Datei mit mehreren Blättern. Diese haben die Namen der Jahre (z.B. 2010, 2011, 2012 usw.). Auf diesen Blätter sind Produkte (z.B. Kugelschreiber, Bleistifte, Hefte usw. in Zeilen) mit Stückzahlen, Preis usw. in Spalten hinterlegt.

Jetzt möchte ich auf einem Blatt eine Übersicht von jedem Produkt nach Jahren haben. Excel soll automatisch auf ein Blatt alle Produkte (aus den Zeilen) mit den dazugehörigen einträgen (in den Spalten) auf das Übersichtsblatt übergeben und die Blätternamen (2010, 2011 usw.) auf oberste Zeile eintragen. Man mußte in etwa so vorgehen:

Ergebnistabelle erstellen

Tabellenbätter der Jahre durchlaufen

Innerhalb des Jahres: Zeilenweise durchlaufen

Zeile in der Ergebnistabelle anlegen, sofern noch nicht vorhanden

Wert in der Spalte des Jahres eintragen (in passender Zeile)

Optional am Ende: Ergebnistabelle sortieren

Wie kann ich das mit VBA machen? Ich habe mit VBA keine allzugroße Erfahnrung, kenn mich nur ein bießchen aus. Mit Makroaufzeichnung habe ich bereits probiert und kein Erfolg gehabt. Die Produktbezeichnungen sind eindeutig, d.h. in jedem Blatt gleich. Aber manche Produkte sind nicht jedes Jahr vorhanden. Kann jemand mir ein Tipp geben?

Vielen Dank im Voraus.

bei Antwort benachrichtigen
Borlander aristoteles „VBA Frage“
Optionen
Jetzt möchte ich auf einem Blatt eine Übersicht von jedem Produkt nach Jahren haben. Excel soll automatisch auf ein Blatt alle Produkte (aus den Zeilen) mit den dazugehörigen einträgen (in den Spalten) auf das Übersichtsblatt übergeben und die Blätternamen (2010, 2011 usw.) auf oberste Zeile eintragen. Man mußte in etwa so vorgehen:

Das kannst Du ggf. auch ganz ohne VBA mit einer Pivot-Tabelle (mit mehreren Tabellen als Datenquelle) machen ;-)

bei Antwort benachrichtigen
UselessUser aristoteles „VBA Frage“
Optionen

Hallo aristoteles,

ich habe mich früher einmal intensiver mit VBA auseinandergesetzt und vieles ist leider wieder weg bei mir. Aber ich kann dir das Forum ActiveVB empfehlen, hier habe ich stets kompentente Antworten gefunden, einige Leute haben echt Ahnung, aber du darfst natürlich nicht erwarten, dass jemand für dich gleich den passenden Code schreibt ...

http://www.activevb.de/foren/index-foren.html

MfG, UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
gelöscht_323936 aristoteles „VBA Frage“
Optionen

hallo aristoteles,

dazu ist - wie Borlander schon schrieb - kein VBA nötig.
Das läßt sich leicht mit Funktionen erledigen wie SUMMEWENN, SVERWEIS und ähnlichem.
Ist alles ganz logisch und leicht zu verstehen.

Für das Ergebnis ein neues Blatt einfügen.

Produkte in die erste Spalte eintragen.
Für Faule wie mich: Aus jedem Blatt kopieren, Duplikate entfernen.
Zeilenüberschriften die Jahreszahlen.
Formeln zusammenstellen und Formeln in jeder Spalten vervielfältigen. In den einzelnen Jahresspalten dann den Namen für das entsprechende Tabellenblatt angleichen 2011, 2010 usw.

Das geht leicht über mehrere Blätter genau so wie über über verschiedene EXCEL-Dateien.

Sortieren - wonach?
Eventuell dazu ein neues Blatt aus dem vorherigen Ergebnis
Nicht vergessen mit z.B. ISTNV zu überprüfen, ob für die aktuelle Position eine Ergebnis vorhanden ist.

Viel Erfolg!

Oder Eben VBA lernrn...

bei Antwort benachrichtigen