Wartości tekstowe w tabeli przestawnej?


2

Mam tabelę (w MySQL) z 3 kolumnami:

Location    Category     Supplier

   A        Computers    Company X
   A        Printers     Company Y
   B        Computers    Company X
   B        Printers     Company Y
   B        Software     Company Y
   C        Computers    Company Y
   C        Software     Company Z

Teraz muszę zrobić matrycę zawierającą powyższe informacje, takie jak to:

       Computers      Printers       Software

A      Company X      Company Y
B      Company X      Company Y      Company Y
C      Company Y                     Company Z

W końcu muszę to mieć w programie Excel.

W rzeczywistości mam zmienną liczbę kategorii, więc robienie tego w MySQL z łączeniem dla każdej kolumny nie jest dobrą opcją. Mógłbym napisać funkcję w PHP, ale zastanawiałem się, czy istnieje bardziej eleganckie rozwiązanie.

Szukałem tabel przestawnych w programie Excel, ale wydają się one odpowiednie tylko dla liczb jako wartości. Ale może coś pomijam, ponieważ sam nigdy nie pracuję z programem Excel.


Dokładny duplikat w przepełnieniu stosu. Powinieneś zapytać tylko w jednym miejscu.
DavidEG

Przepraszam, zdałem sobie sprawę, zaraz po opublikowaniu na stackoverflow, że tak naprawdę nie jest to pytanie programistyczne, więc też tutaj je umieściłem
Dylan

Odpowiedzi:


2

Nie wiem, czy jest to tak „eleganckie”, jak się spodziewałeś, ale jesteś na dobrej drodze z pomysłem tabeli przestawnej. Musisz tylko trochę oszukać. „Kolumna pomocnika”, tabela przestawna i funkcja „vlookup” mogą być tutaj Twoimi przyjaciółmi.

Najpierw do oryginalnych danych dodaj kolumnę pomocniczą dla „DostawcaNumer”. Firma X = 1, Firma Y = 2, Firma Z = 3. Ustawiam kolumnę pomocnika jako pierwszą kolumnę, aby ułatwić jej użycie w późniejszym czasie w vlookup. Uwaga: dane znajdują się teraz w komórkach A5: D11.

wprowadź opis zdjęcia tutaj

Następnie przestaw dane w ten sposób. Użyłem opcji „klasyczny układ tabeli przestawnej” w zakładce „Wyświetlanie” okna dialogowego „Opcje tabeli przestawnej” (kliknij prawym przyciskiem myszy tabelę przestawną, aby wyświetlić to okno dialogowe).

wprowadź opis zdjęcia tutaj

Wybierz i skopiuj całą tabelę przestawną, a następnie „wklej specjalne / wartości” w innym miejscu z boku oryginalnej tabeli przestawnej. Następnie w treści kopii tabeli wprowadź pokazaną formułę. Zauważ, że formuła vlookup odnosi się z powrotem do oryginalnej tabeli przestawnej (odniesienie „H7” - patrz poprzedni schemat), a także do zakresu A5: D11 wspomnianego wcześniej.

wprowadź opis zdjęcia tutaj

Jak powiedziałem, nie jest elegancki, ale działa. Jest wielu inteligentnych ludzi, którzy przeglądają tę stronę, którzy prawdopodobnie znajdą dla ciebie „eleganckie” rozwiązanie!


0

Doszedłem do wniosku, że można całkowicie uniknąć tabeli przestawnej. Zobacz zrzut ekranu poniżej. Użyj kolumny pomocniczej. Zdefiniuj pokazane nazwane zakresy. Ustaw swój układ jak w G14: J18. W treści tabeli użyj WYSZUKAJ.PIONOWO z SUMPRODUCT.

wprowadź opis zdjęcia tutaj

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.