Jak połączyc dwa wiersze gdy są dwie takie same wartości ?
Jak połączyc dwa wiersze gdy są dwie takie same wartości ?
W jaki sposób mogę połączyć dane z tabeli A:G i tabeli I:M na zasadzie takiej :
jeżeli w wierszu A1:G1 komórka B1=I1 i E1=J1 wtedy wynikiem jest zakres A1:G1 & K1:M1 w innym przypadku puste pole lub 0
Jak połączyć dwa wiersze w jeden je żeli wiersz pierwszy ma dwie wspólne wartości ?
jeżeli w wierszu A1:G1 komórka B1=I1 i E1=J1 wtedy wynikiem jest zakres A1:G1 & K1:M1 w innym przypadku puste pole lub 0
Jak połączyć dwa wiersze w jeden je żeli wiersz pierwszy ma dwie wspólne wartości ?
OpenOffice.ux.pl.3.4 na Windows XP
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
Rozumiem, że pytanie dotyczy danych z tych samych wierszy w dwóch tabelach. Formuła macierzowa
Takie formuły zatwierdza się <Ctrl+Shift+Enter>. Można je kopiować z obszaru do obszaru, ale nie można przeciągać.
Pierwszy {...} jest listą numerów elementów jakie należy pobrać z pasującego wiersza. Drugi {...} jest listą elementów wstawianych w sytuacji awaryjnej. TRANSPOSE użyłem, żeby wynik mieścił się w wierszu a nie w kolumnie.
Po polsku nazwy funkcji są inne:
TRANSPOSE -> TRANSPONUJ
IF -> JEŻELI
INDEX -> INDEKS
Kod: Zaznacz cały
=IF((B1=I1)*(E1=J1);TRANSPOSE(INDEX(A1:M1;{1;2;3;5;6;7;11;12;13})); TRANSPOSE({0;0;0;0;0;0;0;0;0}))
Pierwszy {...} jest listą numerów elementów jakie należy pobrać z pasującego wiersza. Drugi {...} jest listą elementów wstawianych w sytuacji awaryjnej. TRANSPOSE użyłem, żeby wynik mieścił się w wierszu a nie w kolumnie.
Po polsku nazwy funkcji są inne:
TRANSPOSE -> TRANSPONUJ
IF -> JEŻELI
INDEX -> INDEKS
JJ
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
ta formuła działa - dziękuję
Mam jedno pytanie czy ona nie jest równoznaczna z taką :
=Jeżeli(I(B1=I1;E1=J1);A1&" "&B1&" "&C1&" "&D1&" "&E1&" "&F1&" "&G1&" "&K1&" "&L1&" "&M1;0) ???
Na zdjęciu przedstawiam łączenie dwóch tabel w ten sposób w jaki chcę
gdzie jedna tabela jest w zakresie A6:G1000 a druga transportowana
poziomo .
Taki efekt jest zadowalający lecz połączenie 1000 wierszy z drugą
tabelą która zawiera 1500 wierszy ( nawet jej całkowicie nie wkleję gdyż arkusz jest zbyt wąski )
obciąż mi komputer i nie jestem w stanie wykonać obliczeń.
Pozatym drugim problemem jest ustawienie wyników w jednej kolumnie .
Muszę kopiować wszystkie w ten sposób obliczone komórki do notatnika
usówać " 0 " lub spację czy separator ( w zależności co wstawię w sytuacji gdy obliczenia nie spełniają kryteriów )
Następnie ustawić wyniki tak aby tworzyły kolumny o identycznych odstępach i każdą z tych kolumn
przekopiować do jednej kolumny - czasochłonne męczące i uciążliwe .
Czy jest jakiś sposób aby wyniki uzyskać w jednej kolumnie ?
Puste miejsca bez problemu usunę poprzez załóżenie filtra standardowego
i wybór niepustych komórek .
Wszystkie będą zaczynały się w jednej komórce więc puste ominę a niepute przekompiuję celem dalszej analizy.
Mam jedno pytanie czy ona nie jest równoznaczna z taką :
=Jeżeli(I(B1=I1;E1=J1);A1&" "&B1&" "&C1&" "&D1&" "&E1&" "&F1&" "&G1&" "&K1&" "&L1&" "&M1;0) ???
Na zdjęciu przedstawiam łączenie dwóch tabel w ten sposób w jaki chcę
gdzie jedna tabela jest w zakresie A6:G1000 a druga transportowana
poziomo .
Taki efekt jest zadowalający lecz połączenie 1000 wierszy z drugą
tabelą która zawiera 1500 wierszy ( nawet jej całkowicie nie wkleję gdyż arkusz jest zbyt wąski )
obciąż mi komputer i nie jestem w stanie wykonać obliczeń.
Pozatym drugim problemem jest ustawienie wyników w jednej kolumnie .
Muszę kopiować wszystkie w ten sposób obliczone komórki do notatnika
usówać " 0 " lub spację czy separator ( w zależności co wstawię w sytuacji gdy obliczenia nie spełniają kryteriów )
Następnie ustawić wyniki tak aby tworzyły kolumny o identycznych odstępach i każdą z tych kolumn
przekopiować do jednej kolumny - czasochłonne męczące i uciążliwe .
Czy jest jakiś sposób aby wyniki uzyskać w jednej kolumnie ?
Puste miejsca bez problemu usunę poprzez załóżenie filtra standardowego
i wybór niepustych komórek .
Wszystkie będą zaczynały się w jednej komórce więc puste ominę a niepute przekompiuję celem dalszej analizy.
OpenOffice.ux.pl.3.4 na Windows XP
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
Nie, bo moja robi kopię wiersza tabeli, a Twoja łączy rubryki w jeden tekst.nowicjusz pisze:[...] czy ona nie jest równoznaczna z taką :
=Jeżeli(I(B1=I1;E1=J1);A1&" "&B1&" "&C1&" "&D1&" "&E1&" "&F1&" "&G1&" "&K1&" "&L1&" "&M1;0) ???
Moja propozycje pracuje na synchronicznych wierszach. Przetworzenie 1500 wierszy współbieżnie to nie problem w arkuszu.Taki efekt jest zadowalający lecz połączenie 1000 wierszy z drugą
tabelą która zawiera 1500 wierszy ( nawet jej całkowicie nie wkleję gdyż arkusz jest zbyt wąski )
obciąż mi komputer i nie jestem w stanie wykonać obliczeń.
Jeżeli tabele różnią się długością, to ja rozumiem, że chcesz dopasować dany wiersz do innego w drugiej tabeli. Powstaną pytania: czy jest to jednoznaczne, i co zrobić, jeżeli nie jest. Poza tym jest to operacja na 1500 x 1000 = 1500000 możliwości, i sugeruję użycie bazy danych, w której łączenie różnych tabel załatwia się od ręki operacją JOIN.
No bo pytałeś o synchroniczne operacje, a wychodzi na to, że musisz dopasowywać.Pozatym drugim problemem jest ustawienie wyników w jednej kolumnie .
Muszę kopiować wszystkie w ten sposób obliczone komórki do notatnika
usówać " 0 " lub spację czy separator ( w zależności co wstawię w sytuacji gdy obliczenia nie spełniają kryteriów )
Następnie ustawić wyniki tak aby tworzyły kolumny o identycznych odstępach i każdą z tych kolumn
przekopiować do jednej kolumny - czasochłonne męczące i uciążliwe .
Aj, jeżeli coś wymaga ręcznych ingerencji, to znaczy że jest źle zaprojektowane.Czy jest jakiś sposób aby wyniki uzyskać w jednej kolumnie ?
Puste miejsca bez problemu usunę poprzez załóżenie filtra standardowego
i wybór niepustych komórek .
Wszystkie będą zaczynały się w jednej komórce więc puste ominę a niepute przekompiuję celem dalszej analizy.
Najlepiej zamiast dziubdziać w arkuszu przyjrzyj się relacyjnym bazom danych.
JJ
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
Wszystko rozumiem , dziękuję za obszerne tłumaczenie ; postaram się zapoznać z bazami danych i operacją Join .
Dodam tylko tak ogólnie że chodzi o połączenie pierwszego wiersza z tabeli 1 z każdym wierszem z tabeli 2 potem drugiego wiersza z tabeli 1 z każdym wierszem
z tabeli 2 i w końcu ostatniego wiersza z tabeli 1 z każdym wierszem z tabeli 2 pod warunkiem że :
Komórka 1 tabela 1 = komórka 1 tabela 2 i komórka 2 tabela 1 = komórka 2 tabela 2
Inaczej mówiąc jeśli są dwa arkusze : arkusz X1 i arkusz X2 i w każdym z nich tabele ,
Tabela X1.A1:G1000
Tabela X2.A1:E1500
Tak tabele mają różne długości i te powiedzmy 500 wierszy z krótszej tabeli można zastąpić liczbą 99 ( będzie to neutralna liczba której nie ma w bazie )
Porównywane komórki A1 i B1 w arkuszu X1 i A1 i B1 w arkuszu X2 mają takie same wartości tzn w jednym i drugim na te 1500 i 1000 wierszy będzie np
10 różnych liczb : 1 10 20 30 32 33 34 35 36 37 i żadnych inny nie będzie - będą to takie same liczby w obu arkuszach i jeżeli jedna i druga liczba jest w jednym i drugim arkuszu wtedy łącze cały wiersz z arkusza X1 z trzema ostatnimi liczbami z porównywanego wiersza z arkusza drugiego X2 i otrzymuję ciąg 10 liczb
Wiem że dziubdzianie jest do niczego
lecz moja wiedza na temat baz danych tak samo do niczego więc robię co mogę
Dodam tylko tak ogólnie że chodzi o połączenie pierwszego wiersza z tabeli 1 z każdym wierszem z tabeli 2 potem drugiego wiersza z tabeli 1 z każdym wierszem
z tabeli 2 i w końcu ostatniego wiersza z tabeli 1 z każdym wierszem z tabeli 2 pod warunkiem że :
Komórka 1 tabela 1 = komórka 1 tabela 2 i komórka 2 tabela 1 = komórka 2 tabela 2
Inaczej mówiąc jeśli są dwa arkusze : arkusz X1 i arkusz X2 i w każdym z nich tabele ,
Tabela X1.A1:G1000
Tabela X2.A1:E1500
Tak tabele mają różne długości i te powiedzmy 500 wierszy z krótszej tabeli można zastąpić liczbą 99 ( będzie to neutralna liczba której nie ma w bazie )
Porównywane komórki A1 i B1 w arkuszu X1 i A1 i B1 w arkuszu X2 mają takie same wartości tzn w jednym i drugim na te 1500 i 1000 wierszy będzie np
10 różnych liczb : 1 10 20 30 32 33 34 35 36 37 i żadnych inny nie będzie - będą to takie same liczby w obu arkuszach i jeżeli jedna i druga liczba jest w jednym i drugim arkuszu wtedy łącze cały wiersz z arkusza X1 z trzema ostatnimi liczbami z porównywanego wiersza z arkusza drugiego X2 i otrzymuję ciąg 10 liczb
Wiem że dziubdzianie jest do niczego

OpenOffice.ux.pl.3.4 na Windows XP
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
W arkuszu istnieją funkcje wyszukujące (podaj.pozycję, wyszukaj), które w pewnym zakresie umożliwiają dopasowywanie wierszy w dwóch tabelach/obszarach. Dopasowanie ze względu na klucz złożony (dwie kolumny) nie jest oczywiste, i wymaga wektorowej składni formuł. Być może także będą potrzebne pomocnicze kolumny.
Przy tym dopasowywanie nie wymaga jednakowej długości obu tabel. Tak że pomysł z neutralną wartością 99 niczego nie upraszcza.
W systemie relacyjnymalboOt, i cała filozofia. Prawie cała, bo jeszcze kolumny musimy wybrać.
Przy tym dopasowywanie nie wymaga jednakowej długości obu tabel. Tak że pomysł z neutralną wartością 99 niczego nie upraszcza.
W systemie relacyjnym
Kod: Zaznacz cały
select * from tabela1 join tabela2 on tabela1.pole1 = tabela2.pole1 and tabela1.pole2 = tabela2.pole2
Kod: Zaznacz cały
select * from tabela1 join tabela2 using (pole1, pole2)
JJ
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: Jak połączyc dwa wiersze gdy są dwie takie same wartośc
Dziękuję za rozwiązanie :
Dostosowałem się i zastosowałem :
SELECT "Tabela3"."1","Tabela3"."2","Tabela3"."3", "Tabela3"."4", "Tabela3"."5", "Tabela3"."6", "Tabela3"."7", "Tabela4"."10" , "Tabela4"."11", "Tabela4"."12" FROM "Tabela3" join "Tabela4" on "Tabela3"."3" = "Tabela4"."8" and "Tabela3"."5" = "Tabela4"."9"
U mnie działa i chyba nie ma błędu ? Nie znam się i ucze - to moje pierwsze zajęcie z baza danych ale działa
Dzięki - " dziubdzianie jest do niczego "
Dostosowałem się i zastosowałem :
SELECT "Tabela3"."1","Tabela3"."2","Tabela3"."3", "Tabela3"."4", "Tabela3"."5", "Tabela3"."6", "Tabela3"."7", "Tabela4"."10" , "Tabela4"."11", "Tabela4"."12" FROM "Tabela3" join "Tabela4" on "Tabela3"."3" = "Tabela4"."8" and "Tabela3"."5" = "Tabela4"."9"
U mnie działa i chyba nie ma błędu ? Nie znam się i ucze - to moje pierwsze zajęcie z baza danych ale działa

Dzięki - " dziubdzianie jest do niczego "
OpenOffice.ux.pl.3.4 na Windows XP