8.6k Aufrufe
Gefragt in Tabellenkalkulation von jeremy Mitglied (677 Punkte)
Hallo Excel Fachmänner,

ich brauche mal wieder Hilfe bei einer Makro-Übernahme,
bei der ich nicht weiterkomme, da ich von Makro überhaupt
keine Ahnung habe.

Im angehangenen Dokument sollte folgendes passieren:

Auf den ersten 9 Reitern (Smart-MB Cafe) habe ich
Speisen und Speisenkomponenten eingefügt. Dies ist
im Augenblick noch mein Muster, also es ist auf den ersten
9 Reitern noch nicht korrekt ausgefüllt. Allerdings kann man
im ersten Reiter Smart in den Zeilen 28-31 bereits sehen,
wie es einmal ausschauen wird. In den Spalten U-AT errechnet
sich dann die benötigte Menge.
Wie gesagt, die Reiter Smart bis MB Cafe werden noch
vervollständigt.

Jetzt benötige ich auch den letzten 13 Reitern (13.09.-25.09.)
eine Übernahme der Mengen.
Dies sollte, wenn es geht wie folgt passieren:

Bsp:

Im Reiter 13.09. sollen aus den ersten 9 Reitern die Zahlen
und Beschreibungen übernommen werden.
Also erstmal schauen, wo steht in den ersten 9 Reitern etwas
in Spalte U + V.
An diesem Bespiel steht in Reiter Smart in U28 =6,0
in V28 = kg.
Übertrage mir jetzt in dem Reiter 13.09. in I9 = 6,0 und in
J9 = kg.
Füge zusätzlich die Speisenform (Frühstück), die Speise
(Mild gesüßter...), die Speisenkomponente (Bio Joghurt),
den Lieferant (Weihenstephan), das produziert durch (Pati)
und den Ihnall´t der TK? Spalte hinzu.

Dies suche jetzt für den 13.09. auf allen 9 Tabellenblättern
in den Zeilen von Zeile 28 - 1000 (1000 als Sicherheit falls
nochmehr dazukommt).

Was jetzt noch dazu kommt, wäre, dass er gleiche Artikel,
also wo Speisenform, Speise, Speisenkomponente, Lieferant,
produziert durch und TK?, nicht mehrere male aufführt, sondern
nur einmal.
Also wenn es als Beispiel diesen mild gesüßten Bio Joghurt
bei Smart und bei Maybach auffürt, dann schreibe mir den
Artikel einmal hin und trage mir die Mengen auf dem Reiter
13.09., dann eben in Spalte I + K.

Dies alles sollte durch das Makro in den Tabellenblättern
13.09. - 25.09. passieren.


Was noch abschließend hinzukommt:

Der "Kunde" ändert auch gerne mal sehr kurzfristig einige Sachen.
Dann muss ich in den ersten 9 Blättern teilweise Speisen, aber auch
Gästezahlen ändern.
Das Makro sollte also wenn möglich so ausgelegt sein, das wenn ich
es erneut betätige in den Reitern 13.09. - 25.09. erstmal alles gelöscht
wird und dann neu berechnet wird.



Kann mir da jemand helfen ???


Bei Fragen, einfach loslegen...


https://rapidshare.com/files/1654861629/IAA_2011_-_Mercedes_-_alle_Veranstaltungen_-_Makrotest_1.xlsx

Vielen Dank

Jeremy


PS: Die Reiter Vorabend Event und Rhein Main Abend einfach
ignorieren...

52 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

habe einen ersten Testlauf mit einem Teilmakro gemacht, sah sehr gut aus. Da ich aber mit 2003 arbeite kann ich das Makro nicht unter 2010/2011 speichern.

Mir ist nicht 100 % klar ob mein Makro unter der höheren Version läuft und ehe ich viel Schmalz investiere meine Rückfrage ob das jemand weiss?

Gruß

Helmut
0 Punkte
Beantwortet von jeremy Mitglied (677 Punkte)
Also ich weiß es nicht, kannst mir aber die Datei schicken, dann kann ich es testen...

Email-Adresse hast du ja :-)


Jeremy
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo alter Helmut :-),

nur zu, die Office-Versionen sind abwärtskompatibel oder sollen sie zumindes sein.

@ Jeremy
hoffentlich vergesse ich übermorgen nicht zu gratulieren, weil es eín Runder ist.
Bist übrigens noch jung, musst noch 31 Jährchen leben ehe Du mich hast, leider lebe ich dann nicht mehr:-))

Gruß
Rainer
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo @rainberg,

dann bin ich mit weinen knapp 10 Jahren weniger, gegenüber dir noch ein Jungspund.


Gruß

Helmut
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Jeremy,

Habe mir die Datei und Deine Verarbeitungswünsche etwas genauer angesehen und bin der Meinung, dass die Aufbereitung der Tabellen etwas geändert werden sollten.

In Smart befinden sich 7 verschiedene Frühstücksvarianten davon 2 leer
In Maybach befinden sich 12 verschiedene Frühstücksvarianten davon 2 leer.

Folgender Ablauf:

Von Smart werden A28 bis D31 und O28 bis Q31
übertragen nach z.B. Tabellen 13.9. bis 25.9.
A9 bis A12 und E9 bis G12

Dieser Positionsblock sollte mir einer eindeutigen ID z.B. A1 in Smart A28 bis A31 versehen sein, sowie auch in den Tabellen von 13.9. bis 25.9. z.B. A9 bis A12 (je nachdem wie angeordnet)
Deswegen mit einer eindeutigen ID Nr., es könnte ja sein, dass das gleiche Frühstück z.B. bei den Getreidekörnern statt „Rewe“ einen anderen Liefernten hätte, dann wäre als ID z.B. A2 für alle 4 Positionen zu nehmen

Die Zellen der datumsbezogenen Tabellen ab I9 bis J9, K9 bis L9 etc...
könnten am besten mit einer geeigneten Formel die Daten von den kundenbezogenen Tabellen übernehmen.

In den Tabellen 13.9. bis 25.9. sollten alle Frühstücksvarianten vollständig (wie eine Artikelliste) in Positionsblöcken (natürlich auch alle anderen Speisen) enthalten sein, die auch in den kundenbezogenen Tabellen vorhanden sind.

Damit ist gewährleistet, dass gleich bei der Eingabe nach Prüfung (mittels geeigneter Formel) die in den kundenbezogenen Tabellen enthaltenen Daten in die datumsbezogenen Tabellen übertragen werden.

So kann eine umständliche nachträgliche Verarbeitung, die den Rechner belastet, vermieden werden.

Auch könnte man sich ein Löschen und Neuberechnen ersparen, zumal immer alles aktuell ist.

Nur eine Idee und vielleicht eine Möglichkeit von mehreren


Gruß

Paul1
0 Punkte
Beantwortet von jeremy Mitglied (677 Punkte)
@ alle:

Da bin ich mit meinen knapp 40 ja echt noch ein Jungspund...
Ich hoffe mal das ich in euerm weisen Alter, auch soviel Excel
kann, wie ihr heute... Ich bin guter Hoffnung, schiebe jetzt meine
Unfähigkeit einfach aufs Alter :-)

@ Paul1:

Ja es gibt im Augenblick noch diese ganzen "Leerfelder".
Das ist ja eines meiner täglichen Probleme.

Die IAA beginnt in drei Wochen und die Verantwortlichen
diskutieren immer noch was es zu essen geben soll.
Allein diese Woche finden noch drei Probeessen statt :-(

Nächste Woche bekomme ich dann hoffentlich die voraussichtlichen
finalen Speisenkonzepte, dann werden zu jeder Speise auch die
passenden Zutaten eingetragen und danach lösche ich jegliche
Zeile, die zuviel ist weg.

Ich habe ja geschrieben, das dies mein Master ist, und ich es nach
Beendigung der Probeessen noch anpassen muss.

Ich lösche aber später lieber Zeilen raus, als welche nachträglich
einzufügen...

Was deinen Vorschlag mit der ID angeht, das muss ich mir am Wochenende mal anschauen, habe bisher noch nicht mit zugewiesener ID gearbeitet. Vielleicht ist auch
diese Lösung der Weg, mal schauen.

Fürs erste schonmal vielen Dank für deine Hilfe, werde Anfang kommender Woche dazu ein Feedback abgeben.


Freue mich trotz der ganzen Ansätze weiter auf Euer Feedback....



LG, der junge Jeremy :-)
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Jeremy,

gegen diese Leerblöcke ist nichts einzuwenden, sowohl in den kundenbezogenen als auch in datumsbezogenen Tabellen und behindert auch nicht die Verarbeitung.

Es könnten ja noch Essensvarianten dazukommen, die dann in beiden Tabellenarten aufgenommen werden müssten.

Gruß

Paul1
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo zusammen,

muss mich nun doch noch mal melden und folgendes zum Problem sagen.

Es ist ohne Zweifel möglich dieses Problem mit Formeln zu lösen, aber.....
wenn es eine Lösung werden soll, die auch Werte- und/oder Strukturänderungen in den Quellblättern zulässt und trotzdem die richtigen Werte in die Zielblätter transferiert (und nur das ist in meinen Augen eine brauchbare Lösung), ist es unabdingbar Vergleichsformeln zu verwenden. (Übrigens auch eine Makrolösung sollte diesen Aspekt berücksichtigen)

Das Mindeste wäre die Kombination von INDEX() und VERGLEICH().

Da nun aber jedes Zielblatt auf Werte verschiedener Quellblätter zugreifen muss, ist auch noch die Integration von BEREICH.VERSCHIEBEN() oder INDIREKT() erforderlich.
Und hier liegt der Hase im Pfeffer, beide Funktionen gehören zu den volatilen Tabellenfunktionen, was bedeutet, das durch jedes "Enter" in einer beliebigen Zelle der Tabelle, eine Neuberechnung angestossen wird und das kostet Zeit.

Wenn Ihr Euch nun mal anseht, wieviele Matrixformeln bereits in der Arbeitsmappe vorhanden sind und wieviele Vergleichsformel noch nötig wären, muss selbst der grösste Optimist zugeben, dass das nichts werden kann.
Ich schreibe das nicht nur so, ich habe es in nur einem Zielblatt probiert und aufgegeben.

@ Jeremy
es liegt nun allein bei Dir, wie Du Dich entscheidest, ich jedenfalls bin der Meinung, ein weiteres laborieren an einer Formellösung ist veschwendete Zeit.
Es sei denn, es befriedigt Dich eine sogenannte "Krücke".

Gruß
Rainer
0 Punkte
Beantwortet von jeremy Mitglied (677 Punkte)
@ Rainer:

ja was soll ich sagen???

Ich hätte gerne eine "komplette" Lösung, wie auch immer die aussieht...

Ich bin wie gesagt, nicht so firm, wie ihr alle da draussen in der weiten Excel-Welt.
Ich weiß das Helmut, mal eine ähnliche Zusammenfassung für mich einmal geschafft
hat, genau wie M.O.

Ich persönlich werde es nicht allein hinbekommen, ich hoffe auf Hilfe von Euch...

Wenn, aus Zeit oder Schwierigkeits-technischen Gründen keiner hinbekommt, werde
ich versuchen, die Lösung über m-o-m versuchen, die scheint mir, mit meinem geringen Excel-Wissen am einfachsten für mich (nur auf mich bezogen).

Wenn gar nicht geht, hat die Küche den schwarzen Peter gezogen, ich kann nur versuchen
zu helfen, wenn es nicht geht, geht es nicht....


LG Jeremy
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo,

ich muss mich jetzt auch mal zu Wort melden (wenn ich das als "Jungspund" darf - ich bin nur ein paar Jahre älter als Jeremy :-) ).

Ich habe mir mal die Ausgangstabelle angesehen und habe wie Rainer Bedenken, dass bei einer Formellösung der Rechner in die Knie geht. Hier müssen ja für zwölf Tage Auswertungen von neun Blättern vorgenommen werden.

Ich habe zwar für Jeremy schon mal eine Makrolösung gebastelt, aber da waren die Ausgangsdaten nur in einer Tabelle. Und selbst da habe ich schon bei der Ausführung von verschiedenen Makros die automatische Berechnung ausgeschaltet, damit das Makro schneller läuft.

Ich habe zurzeit auch nicht die Zeit mich intensiv mit dem Problem zu beschäftigen, um eine VBA-Lösung anbieten zu können.

Mal sehen, was Helmut bastelt.

Gruß

M.O.
...