logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Excel - automatyczne łączenie danych z dwóch arkuszy w jeden

norodoma 11 Wrz 2013 13:05 23205 6
REKLAMA
  • #1 12723561
    norodoma
    Poziom 9  
    Posty: 5
    Witam,
    mam plik, w którym pierwsze dwa arkusze stanowią identyczne tabele zawierające dane tego samego typu, ale pochodzące z różnych oddziałów.
    W trzecim arkuszu chcę utworzyć tabelę łączną składającą się tych dwóch poprzednich tabel.
    Ważne jest, żeby dane w łącznej tabeli były ułożone w ten sposób, że na początku znajdują się wiersze z arkusza 1, a zaraz pod nimi wiersze z arkusza 2. Chciałabym żeby tabela w 3 arkuszu generowała się automatycznie, obecnie uzyskałam efekt jak w załaczonym pliku- po każdej zmianie liczby wierszy w 1 lub 2 arkuszu muszę przeciągnąć formuły w 1 i 2 kolumnie tabeli łącznej, a wtedy pozostałe (niezałączone w pliku kolumny) uzupełniają się automatycznie.
    Czy istnieje funkcja, która automatycznie wygerenuje mi tabelę łączną?
    Załączniki:
    • aaa.xls (27.5 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 12723971
    cbrman
    Poziom 27  
    Posty: 441
    Pomógł: 177
    Ocena: 61
    Użyj MSQuery i następującej kwerendy
    Kod: SQL
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #3 12724920
    Maciej Gonet
    Specjalista - VBA, Excel
    Posty: 2207
    Pomógł: 824
    Ocena: 481
    Dzień dobry,
    Gdyby wolała Pani poprzestać na tradycyjnych formułach Excela, proszę rozważyć rozwiązanie jak w załączniku. Nie wiem jakie znaczenie mają dla Pani zera w zestawieniu wynikowym. Ja wyłączyłem wyświetlanie zer w opcjach Sheet3. Jeśli zera lub kreski są potrzebne, trzeba dodać jeszcze jeden warunek do formuł.
    Pozdrowienia
    Załączniki:
    • aaa1.xls (33 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #4 12726702
    norodoma
    Poziom 9  
    Posty: 5
    Maciej Gonet napisał:
    Dzień dobry,
    Gdyby wolała Pani poprzestać na tradycyjnych formułach Excela, proszę rozważyć rozwiązanie jak w załączniku.


    Nie umiem posługiwać się MSQuery, dlatego zdecydowałam się na tą metodę. Funkcja sprawdza się kiedy dodaję kolejne wiersze w arkuszach źródłowych, ale jest problem kiedy usunę jeden z nich - wtedy wyskakuje błąd bo formuła odwołuje się do nieistniejącej komórki. Czy da się w jakiś sposób wyeliminować ten problem?
  • #5 12726770
    Maciej Gonet
    Specjalista - VBA, Excel
    Posty: 2207
    Pomógł: 824
    Ocena: 481
    Dzień dobry,
    Pani dane w arkuszach Sheet1 i Sheet2 z numeratorem, który Pani zastosowała są zorganizowane na zasadzie stosu - a więc można z niego usuwać ostatni element i dodawać elementy na końcu. Zakładam, że taka organizacja danych jest świadoma. Jeżeli Pani potrzebuje dostępu swobodnego do danych, to ta organizacja i numerowanie (jeśli w ogóle jest potrzebne) musi być inna. Musi Pani określić jakie operacje mają być wykonywane na danych, bo o kasowaniu do tej pory w ogóle nie było mowy.
    Pozdrowienia.
  • REKLAMA
  • #6 12726842
    norodoma
    Poziom 9  
    Posty: 5
    No tak, racja ;)
    Plik będzie codziennie aktualizowany przez dwie osoby- dla nich przeznaczone są dwie pierwsze zakładki. Będą w nim zawarte zrealizowane zlecenia (każde zlecenie ma indywidualny numer) ale tylko z tego konkretnego dnia. Codziennie liczba zleceń (a wiec liczba wierszy) w poszczególnych arkuszach będzie różna- dlatego też muszę przewidzieć możliwość usuwania wierszy. Zależy mi na stworzeniu jednej wspólnej tabeli (arkusz 3) dla wszystkich zleceń z danego dnia (czyli z arkusza 1 i 2) bo na jej podstawie generowana będzie tabela przestawna z wyszczególnieniem liczby zleceń dla poszczególnych odbiorców. Mam nadzieję, że wystarczająco wytłumaczyłam o co mi chodzi ;)
  • #7 12726961
    Maciej Gonet
    Specjalista - VBA, Excel
    Posty: 2207
    Pomógł: 824
    Ocena: 481
    Dalej nie do końca jasne. Z tego, co Pani napisała rozumiem, że lista będzie tworzona każdego dnia od początku, czyli nie chodzi o usuwanie pojedynczych pozycji z listy, tylko całej listy. Wydaje mi się, że ta lista zachowuje się prawidłowo po usunięciu wszystkich pozycji, kłopoty są tylko gdy Pani będzie chciała usunąć coś ze środka listy, pozostawiając puste pole. Poza tym drobny problem stwarza pozycja nr 1 na każdej liście, bo tam na stałe wpisana jest jedynka, a powinna być formuła =JEŻELI(B3>0;1;).
    Oczywiście można również użyć innych formuł.
    Jeżeli w dalszym ciągu ma Pani błędy proszę opisać dokładnie w jakiej sytuacji, albo przesłać przykładowy plik z opisem kiedy wystąpił błąd.

    Dodano po 2 [godziny] 16 [minuty]:

    Jeszcze inna propozycja, te formuły, które są teraz w załączniku pozwalają dokładać i usuwać komórki w dowolnych miejscach, ale tylko w kolumnie danych - kolumna licznika musi pozostać nienaruszona, dlatego trzeba zrezygnować z formatu tabeli, a przynajmniej wyłączyć z niego kolumnę licznika - bo z tabeli można usuwać lub wstawiać tylko całe wiersze. Teraz przy usuwaniu trzeba pozostałe komórki przesunąć do góry, a przy wstawianiu - w dół.

    Dodano po 3 [minuty]:

    Jeszcze załącznik, bo poprzednio się nie dodał.
    Załączniki:
    • aaa2.xls (40 KB) Musisz być zalogowany, aby pobrać ten załącznik.

Podsumowanie tematu

✨ Użytkownik poszukuje sposobu na automatyczne łączenie danych z dwóch arkuszy Excela w jeden, gdzie dane z arkusza 1 są umieszczane nad danymi z arkusza 2. Obecnie, po każdej zmianie liczby wierszy w arkuszach źródłowych, konieczne jest ręczne przeciąganie formuł w tabeli łącznej. Użytkownik rozważa użycie MSQuery, ale preferuje tradycyjne formuły Excela. W trakcie dyskusji poruszono problemy związane z usuwaniem wierszy oraz koniecznością dostosowania formuł, aby uniknąć błędów przy usuwaniu danych. Użytkownik potrzebuje rozwiązania, które umożliwi codzienną aktualizację danych bez konieczności ręcznego dostosowywania formuł.
Wygenerowane przez model językowy.
REKLAMA