Clever-Excel-Forum

Normale Version: Excel-Tabelle "Normalisieren"! Welche Möglichkeiten gibt es?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo Evelyn,

da hast Du mich falsch verstanden. Wir haben angenommen, dass das Bild korrekt ist und snb hat sein Makro entsprechend geschrieben. Korrekt wäre im Prinzip Deine Aufstellung im Blatt Zusammenfassung.

Ich habe Deine Datei mal im Anhang und dort ein neues Blatt mit einem Button und das Makro eingefügt. Füge Deine Daten dort ein und starte das Makro mit dem Button.
Hallo

@schauan   zum Testen habe ich mal die Beispieldatei geladen und bekomme beim Drücken des Buttons eine Fehlermeldung.
Ich verstehe im Augenblick noch nicht was da ausgewertet werden soll und gabe es mal so zurück.

mfg Gast 123
Hallo Schauan,

Normalisierung ist aber im weiteren Verlauf, Dein in http://www.clever-excel-forum.de/Thread-...9#pid82199 genanntes Ziel (mit vielen, vielen Wdh., die man gerade eliminieren möchte) in mehrere Tabellen aufzuteilen.

Die erste Normalform, die snb und Du erzeugen, ist allerdings das für Excel oft Sinnvolle, da man ab der 2. NF höheren Auswertungsaufwand bekommt.
Hallo Gast 123,

welche Daten hast Du denn verwendet?
Die Daten entsprechend Aufgabenstellung stehen im Blatt "Übersicht" im Bereich A1:D6.

Hallo Lupo,

wie sieht Deine Lösung aus? Der Code von snb könnte insofern am Lehrgangsziel vorbei gehen, wo eventuell die einzelnen Schritte in Excel darzustellen gefordert ist. Er könnte aber in der Firma besser passen.

Hier nochmal die Tabelle mit zwei simplen Beispielen für Pivot-Auswertungen. Ich habe lediglich die Tabellenüberschriften von Hand nachgetragen, da das im Code nicht enthalten ist.
Ich ziehe meinen Einwand zunächst mal zurück, da "Normalisierung" hier wohl als Herstellung der 1. NF verstanden wurde, nicht als Erstellung eines relationalen Modells (3. NF oder höher).

Power Pivot (kenne ich persönlich nicht) kann letzteres angeblich auswerten. Damit kann Excel (bislang 1. NF) fast so, wie Access (3. NF).
Korrekt. Das Makro geht leider nicht.
Stimmt nicht.
Hallo Evelyn,

also um die Tabelle in die erste Normalform zu bringen würde ich es so machen:
Code:
Mitarbeiter | Abt-Name   |  Projektname|  Projekt-Stunden (Arbeitsleistung)
Krause      | Karosserie |            A|            20
Krause      | Karosserie |            B|            50
Krause      | Karosserie |            C|            30
Meier       | Karosserie |            C|           100
Müller      | Motoren    |            A|            60
Müller      | Motoren    |            B|            40
Schmidt     | Motoren    |            A|            80
Schmidt     | Motoren    |            C|            20

Für die zweite Normalform:
Code:
Mitarbeiter | Abt-Name  
Krause      | Karosserie
Meier       | Karosserie
Müller      | Motoren    
Schmidt     | Motoren    

Mitarbeiter |  Projektname|  Projekt-Stunden (Arbeitsleistung)
Krause      |            A|            20
Krause      |            B|            50
Krause      |            C|            30
Meier       |            C|           100
Müller      |            A|            60
Müller      |            B|            40
Schmidt     |            A|            80
Schmidt     |            C|            20

Ich gehe dabei davon aus, dass die Ausprägungen des Feldes Mitarbeiter eindeutig ist und daher als Primärschlüssel verwendet werden kann. Ansonsten müsste hier ein Primärschlüssel eingefügt werden (z. B. Mitarbeiternummer). Theoretisch könnte man das ganze noch weiter führen, was aber bei den vorliegenden Daten keinen Sinn macht, da z. B. für die Projekte keine weiteren Eigenschaften/Ausprägungen vorhanden sind).
Um die Aufgsbenstellung zu erfüllen (3. Normalform+Auswertung) könnte ich mir folgendes Ergebnis vorstellen:
Mitarbeiter

ABC
1MitarbeiternummerMitarbeiterAbt-Name
21KrauseKarosserie
32MeierKarosserie
43MüllerMotoren
54SchmidtMotoren


Projekte

AB
1ProjektnummerProjektname
21A
32B
43C


Projektstunden

ABC
1MitarbeiterProjektnameProjekt-Stunden (Arbeitsleistung)
21120
31250
41330
523100
63160
73240
84180
94320


Auswertung

ABC
1MitarbeiterProjektnameProjektstunden
2KrauseA20
3KrauseB50
4KrauseC30
5MeierC100
6MüllerA60
7MüllerB40
8SchmidtA80
9SchmidtC20
10
Formeln der Tabelle
ZelleFormel
A2=WENNFEHLER(SVERWEIS(Projektstunden!$A2;Mitarbeiter!$A$1:$C$5;2;FALSCH);"")
B2=WENNFEHLER(SVERWEIS(Projektstunden!$B2;Projekte!$A$1:$B$4;2;FALSCH);"")
C2=Projektstunden!C2

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Genau, das ist aber korrekt. Ich habe nun die Normalformen gelernt (Aus meinem großen Excel Script). 

Aber so richtig anwenden, kann ich sie noch nicht. Daher habe ich mal Steuerfuzzi um Hilfe gefragt, der mir schon in Vergangenheit geholfen hat, woher er so gut Excel kann, ist mir persönlich schleierhaft. 

Er würde noch meine Tabelle überarbeiten und wir können uns dann die fertige lösung gemeinsam anschauen. 

Bis dahin.

Evelyn
Seiten: 1 2 3