excel - edytowanie tabeli

Wątek przeniesiony 2024-06-25 13:50 z Inne języki programowania przez cerrato.

K9
  • Rejestracja:około 5 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

Dzień dobry.

Zwracam się z wielką prośbą o pomoc w problemie, na który natrafiłam. Nie chodzi dokładnie o kod vba, a raczej sam sposób w jaki można byłoby coś takiego zrobić (czy w ogóle jest to możliwe?). Z kodem spróbuję samodzielnie.
Mianowicie chodzi mi o przerobienie tabeli (nie jest to tabela przestawna). W załączniku dodaję wizualizację, ponieważ trochę ciężko jest mi to opisać.
Chciałabym aby tabela zamiast dużej ilości kolumn, w których niektóre wiersze nie mają przypisanej żadnej wartości, zamienić na tabelę z większą ilością wierszy, do których przypisane są liczby.
Jeżeli byłaby to tabela przestawna można byłoby to nazwać zamianą etykiet kolumn na etykiety wierszy.
Czy coś takiego możliwe jest w przypadku zwykłej tabeli?
Jest to przeszkoda, na którą nie mogę znaleźć żadnego sposobu także będę ogromnie wdzięczna za jakiekolwiek pomysły, rady czy wskazówki.

Z góry bardzo dziękuję za pomoc.

titako
  • Rejestracja:ponad 9 lat
  • Ostatnio:około godziny
  • Postów:260
0

Może ci chodzi o transpozycje ? (Taki tryb wklejania w excelu)

K9
  • Rejestracja:około 5 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

Niestety w przypadku transpozycji tabeli etykiety kolumn stają się etykietami wierszy i na odwrót. Kombinowałam z transpozycją, ale niestety nie przybliża ani trochę do rozwiązania. Nie bardzo potrafię to wytłumaczyć w inny sposób niż wcześniej. Miałam nadzieję, że zdjęcie trochę wyjaśni co mam na myśli. Chcę tak jakby zredukować liczbę kolumn na rzecz większej ilości wierszy.

Ales
  • Rejestracja:około 6 lat
  • Ostatnio:12 dni
  • Postów:121
1

Podaj przykład na różnorodnych danych, bo wszędzie podajesz xxxxxx i nie wiadomo, gdzie które komórki mają przejść

K9
  • Rejestracja:około 5 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

W załączniku na przykładach.

Ales
  • Rejestracja:około 6 lat
  • Ostatnio:12 dni
  • Postów:121
1

Nałóż filtr (odfiltruj puste wiersze) na kontrahencie 1 i skopiuj dane towaru (nazwa, numer, rabat i ilość) do drugiej tabeli. Potem tylko dodaj do każdego wiersza, że to Kontrahent 1 z id 1. Trzeba powtórzyć dla wszystkich. Łatwo będzie też napisać makro które zrobi to z automatu. Potrzebne będą dwie pętle, jedna na kolumny (kontrahenci) a druga zagnieżdżona w pierwszej na wiersze (towary). Przy każdym przebiegu trzeba sprawdzić czy komórka z ilością jest pusta czy nie. Jeśli jest tam liczba to kopiujesz dane towaru i dokładasz nazwę klienta i id z nagłówka

edytowany 1x, ostatnio: Ales
K9
  • Rejestracja:około 5 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

Dziękuję za odpowiedź. W załączniku dodałam bardzo uproszczoną wersję. Moje tabele składają się z ogromnej ilości wierszy i kolumn, ale faktycznie spróbuję tak zrobić.

Ales
W takim przypadku tylko makro
DB
  • Rejestracja:około 7 lat
  • Ostatnio:około 4 lata
  • Postów:36
1

Skorzystaj z dodatku Power Query, tam sporo można zrobić.

K9
  • Rejestracja:około 5 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

Dziękuję, o tym dodatku całkiem zapomniałam. Na pewno zainstaluję i przetestuję jego możliwości :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.