Excel - Daten automatisiert in Blätter aufteilen
fresserettich 21.08.2024 - 16:38 1145 14
fresserettich
Here to stay
|
Hallo zusammen! Brauche bitte eure Hilfe bezüglich Excel. Um es gleich vorweg zunehmen ich bin kein Excel-Profi und greife fast lieber zu einem VBA-Skript weil ich mir leichter tue, aber d.h. nicht, dass dies der einfachere Weg ist. Mein Problem ist folgendes: Ich bekomme automatisiert eine Liste (via SAP) mit Projekten (eindeutige Projektnummer + Name) und dazu Ist- und Soll-Stunden. Hier gibt es zwei Varianten ja nach Projektstatus sind Ist- und Soll-Stunden in einer Zeile oder auf zwei Zeilen aufgeteilt. Leider ist die Zeilenzuordnung nicht fix und kann sich ändern . Weiters ist jedes Projekt einem einzelnen Bereich bzw. ich nenne es mal "Division" zugeordnet. Eine Kennzeichnung ist leider aber in den Daten nicht vorhanden. Was ich jetzt machen möchte ist, dass ich aus dem Roh-Datenblatt, mir x Einzelblätter , ein Blatt pro Division, machen möchte. Dort sollen alle Projekte inklusive Soll- und Ist-Stunden erfasst werden und dann eine Summe gebildet werden. Die Zuordnung muss leider manuell erfolgen, aber das muss man halt dann einmal machen. Mein Algorithmus wäre folgender (für eine Division): - Manuell ein Projekt via Projektnummer festlegen und Zeile im Blatt definieren
- Zeilenindex für das Projekt ermitteln (Rohdaten-Blatt)
- überprüfen ob Daten auf 1 oder 2 Zeilen aufgeteilt
- Ist- und Soll-Stunden in Blatt kopieren
- für x Projekte wiederholen
Hier noch ein Bild von der Tabelle mit den Rohdaten: Die Frage ist jetzt ist hier ein VBA-Skript am eleganteren oder gibt es hier ein paar Excel-Befehle mit dem das leicht realisieren kann? Tia
|
7aph0
photoaddict
|
pivottabelle geht nicht? Dann musst nix kompliziert trennen
|
Snoop
Here to stay
|
1. verstehe ich nicht. 2. RowNumber holen indem du "MATCH" verwendest 3. Formel machen. Sprich, dort wo bei projektname kein Wert drinnen ist, nimm den Wert von darüber. Damit hättest du mal das "mehrere Zeilenproblem" gelöst. Dementsprechend kannst dann auch die Projektnummer nachziehen und das dann dementsprechend ebenso nachziehen. 4. Mit SVERWEIS Werte aus den Spalten automatisiert übertragen
|
7aph0
photoaddict
|
|
Snoop
Here to stay
|
ich hätte verstanden dass es über formeln oder ein script automatisiert wiederholbar sein soll.
ps: alternativ kannst auch die files in powerBI reinladen (man kann einen ordner angeben und dort soll er sich alle excelfiles grabben) und dann in bi auswerten. ist vermutlich die schnellste variante (sofern powerBI zur verfügung steht)
|
7aph0
photoaddict
|
Ja aber powerBI ist nochmal mehr Hürde für nen Excelnoob. Daten reinkopieren, von mir aus "Makroauszeichnen" das Zellenbefüllen, Pilot aktualisieren *Macroaufzeichnerende* klingt da nicht 100 sauber aber ist in paar Minuten eingerichtet und mittels Macro in 2 min aktualisiert
|
fresserettich
Here to stay
|
danke mal für die Tipps, werde ich mir anschauen.
die Daten werden einmal im Monat aktualisiert und dann soll die Auswertung/Übertragung automatisiert passieren. Sprich die Aussage mit automatisiert wiederholbar von Snoop ist korrekt
|
kleinerChemiker
Here to stay
|
Wenns automatisiert laufen soll, würde ich ev. ein Python oder R Skript verwenden.
|
fresserettich
Here to stay
|
1. verstehe ich nicht. 2. RowNumber holen indem du "MATCH" verwendest 3. Formel machen. Sprich, dort wo bei projektname kein Wert drinnen ist, nimm den Wert von darüber. Damit hättest du mal das "mehrere Zeilenproblem" gelöst. Dementsprechend kannst dann auch die Projektnummer nachziehen und das dann dementsprechend ebenso nachziehen. 4. Mit SVERWEIS Werte aus den Spalten automatisiert übertragen das schaut schon recht gut aus. Ein kleines Problem habe ich noch. mit MATCH finde ich den Index, aber wie bring ich das in SVERWEIS. Sprich da würde ich gern dann SVERWEIS(D§MATCH$; ...)
angeben. Nur da fehlt mir noch die richtige Syntax. mit 1. meine ich, dass ich halt für jede Zeile die Projektnummer manuell zuordnen muss.
|
murcielago
Dr. Doom
|
das schaut schon recht gut aus. Ein kleines Problem habe ich noch.
mit MATCH finde ich den Index, aber wie bring ich das in SVERWEIS. Sprich da würde ich gern dann
SVERWEIS(D§MATCH$; ...)
angeben. Nur da fehlt mir noch die richtige Syntax.
mit 1. meine ich, dass ich halt für jede Zeile die Projektnummer manuell zuordnen muss. entweder du speicherst es in eine zelle, wo eben match drinsteht, oder du ersetzt im sverweis die zahl (spalte) mit der match funktion lg
|
fresserettich
Here to stay
|
sorry so ganz dabei bin ich noch nicht
MATCH liefert ja z.B. die Zahl 12
ich muss aber SVERWEIS als ersten Parameter D12 übergeben und den Link bekomme ich nicht zusammen
|
murcielago
Dr. Doom
|
- Du gibst MATCH in einer Zelle ein, zB A2 - Im SVERWEIS schreibst du dann dort wo er die Spalte wissen will A2 rein - (alternativ schreibst du im SVERWEIS dort wo er die Spalte haben will, das MATCH rein)
|
fresserettich
Here to stay
|
ist mir klar, aber ich muss in SVERWEIS("D2"; ...) drinnen stehen haben.
wenn ich in A2 aber =MATCH(...) reinschreibe steht in in A2 nur "2" und nicht "D2". Das ist mein Problem
|
murcielago
Dr. Doom
|
asooo, SVERWEIS("D"&A2)
lg
|
fresserettich
Here to stay
|
so ganz klappt es zwar leider immer noch nicht ich kann zwar jetzt in A2 = D12 reinschreiben , aber wenn ich dann bzw. so wie von murcielago geschrieben. In D12 steht dann "P-10xxx" drinnen. Aber in SVERWEIS(A2; ...) findet es dann nicht sprich er greift dann nicht auf den Inhalt von D12 zu, weil eigentlich sollte ja SVERWEIS("P-10xxx" ; ...) da stehen okay, Teil-Problem ist gelöst. Ich muss ohnehin die Projektnummern nochmal manuell in MATCH oder SVERWEIS eintragen, somit hab ich mir die Projekt-Nummern in das Division-Blatt kopiert und kann somit direkt darauf verweisen
Bearbeitet von fresserettich am 26.08.2024, 17:36
|