07. februar 2007 - 15:32Der er
9 kommentarer og 1 løsning
Omvendt crosstab funktion
Jeg har en tabel med følgende kolonner projekt, medarbejder, art, uge, month, year, mon, tue, wed, thu, fri, sat, sun
I felterne mon-sun ligger et antal timer, og jeg vil gerne have disse timer over i en ny kolonne, samtidig med at der dannes en ny kolonne med værdierne mon-sun alt efter hvor timerne ligger registreret i tabellen. Og mon-sun skal bare væk.
Jeg har selv prøvet med en union, hvor jeg laver en tabel pr. dag og så samler alle 7 tabeller med en union. Det virker også fint nok i Access, men når jeg så gerne vil lave en pivottabel på baggrund af tabellen i Excel, så står excel af. Det er som om Excel ikke kan hente eksterne data, når de består af en union forespørgsel i Access.
UNION kan godt benyttes til at lave en tabel som det foreslåede :
SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "mon" AS Weekday, Tabel.mon AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "tue" AS Weekday, Tabel.tue AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "wed" AS Weekday, Tabel.wed AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "thu" AS Weekday, Tabel.thu AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "fri" AS Weekday, Tabel.fri AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "sat" AS Weekday, Tabel.sat AS Timer FROM Tabel UNION SELECT Tabel.projekt, Tabel.medarbejder, Tabel.art, Tabel.uge, Tabel.month, Tabel.year, "sun" AS Weekday, Tabel.sun AS Timer FROM Tabel
Det sidste er jeg ikke med på ... altså at du I Excel vel lave en krydstabulering til hvad ... ??? det opridelige resultat ????
jensen363: Det er netop sådan jeg har gjort. Men excel vil ikke hente disse data. Derfor vil jeg høre om der er nogen der kan udtænke en anden metode. Excel pivot skal bruges til gruppere data og skære det væk man ikke ønsker. Feks. til at se hvor mange timer en bestemt medarbejder har lagt i en bestemt måned osv. Eller hvor mange timer der i en bestemt måned er blevet registreret på søndage.
Det var jeg ikke klar over. Men det hjælper mig nu heller ikke særlig meget, for det er ikke kun mig der skal kunne slice and dice i data, men også mine kollegaer. Og derfor laver jeg jo et grundudtræk med de felter der skal kunne grupperes, summeres, slices and dices på, og så kan de selv rode rundt i pivottabellen som de lyster.
Ja det er korrekt. Men det er planen at man altid skal have friske data i pivottabellen når man opdaterer pivottabellen, og det kan man ikke hvis man henter fra en tabel, men kun hvis det er en forespørgsel.
Det smarte ved at linke en pivottabel til en forespørgsel er at man ikke behøver at åbne Access og opdatere noget. Opdatering af pivottabellen kalder automatisk forespørgslen, som så kører og smider opdaterede data tilbage i pivottabellen. Forespørgslen er en ODBC forespørgsel ned mod et timeregistreringssystem.
Nå men er der nogen der har en alternativ løsning til at lave tabellen uden at bruge union.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.