Witajcie
Jak usunąć duplikaty w kolumnie ale tak aby zostaly puste komorki? robiac to filtrem standartowym usuwa mi mi wszystkie puste komorki i zmienia pozycje, a ja chcialbym zostawić puste pola
usuwanie duplikatów i puste komorki
usuwanie duplikatów i puste komorki
LibreOffice 6.2.3.2, OpenOffice 4.1.3
Re: usuwanie duplikatów i puste komorki
Formułą.
W kolumnie A są dane.
W kolumnie B począwszy od A2, wpisujemy i kopiujemy w dół formułę
=jeżeli(czy.błąd(podaj.pozycję(A2; A$1:A1; 0)); A2; "")
po ludzku: przepisz wartość, jeśli występuje po raz pierwszy w kolumnie.
W kolumnie A są dane.
W kolumnie B począwszy od A2, wpisujemy i kopiujemy w dół formułę
=jeżeli(czy.błąd(podaj.pozycję(A2; A$1:A1; 0)); A2; "")
po ludzku: przepisz wartość, jeśli występuje po raz pierwszy w kolumnie.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: usuwanie duplikatów i puste komorki
Dziekuje o to mi chodziło działa!
LibreOffice 6.2.3.2, OpenOffice 4.1.3
Re: usuwanie duplikatów i puste komorki
Witam,
Pozwolę sobie odświeżyć.
Czy w równie prosty sposób można formułą usunąć duplikaty i puste komórki z tabeli? Nie używając filtrów.
Pozdrawiam
Pozwolę sobie odświeżyć.
Czy w równie prosty sposób można formułą usunąć duplikaty i puste komórki z tabeli? Nie używając filtrów.
Pozdrawiam
Wojtek
OpenOoffice 4.1.11 na Windows 10
OpenOoffice 4.1.11 na Windows 10
Re: usuwanie duplikatów i puste komorki
To znaczy zbudować nową kolumnę zawierającą spis z usuniętymi powtórzeniami, ale bez luk?
Polega to na tym, że trzeba zbudować wykaz numerów porządkowych pierwszych wystąpień każdej wartości, a potem zbudować kolumnę z wpisów spod tych numerów. Da się za pomocą funkcji wyszukujących: podaj.pozycję, indeks, przesunięcie.
Tak zorganizowany filtr działa „natychmiast” po aktualizacji tabeli, ale metoda jest kosztowna obliczeniowo na etapie sprawdzania, czy dane wystąpienie jest pierwsze.
Najtaniej byłoby posortować spis i pobrać z niego po jednym reprezentacie każdej wartości — wtedy byłaby to np. pierwsza wartość z bloku identycznych wartości — ale realizacja tego pomysłu przez formułę jest dosć kłopotliwa; zwłaszcza sortowanie. Używają go natomiast filtry z klauzulą unikalności.
Załączam naprędce sklecony szkic do analizy. Z kolumny Lp można zrezygnować albo na korzyść zliczania (liczba wystąpień w bloku powyżej wartości wynosi 0) — wtedy dochodzi dodatkowy narzut na zliczanie — albo użycia funkcji wiersz() — zaś wtedy numeracja będzie prowadzona względem planszy arkusza zamiast względem pozycji w bloku.
Polega to na tym, że trzeba zbudować wykaz numerów porządkowych pierwszych wystąpień każdej wartości, a potem zbudować kolumnę z wpisów spod tych numerów. Da się za pomocą funkcji wyszukujących: podaj.pozycję, indeks, przesunięcie.
Tak zorganizowany filtr działa „natychmiast” po aktualizacji tabeli, ale metoda jest kosztowna obliczeniowo na etapie sprawdzania, czy dane wystąpienie jest pierwsze.
Najtaniej byłoby posortować spis i pobrać z niego po jednym reprezentacie każdej wartości — wtedy byłaby to np. pierwsza wartość z bloku identycznych wartości — ale realizacja tego pomysłu przez formułę jest dosć kłopotliwa; zwłaszcza sortowanie. Używają go natomiast filtry z klauzulą unikalności.
Załączam naprędce sklecony szkic do analizy. Z kolumny Lp można zrezygnować albo na korzyść zliczania (liczba wystąpień w bloku powyżej wartości wynosi 0) — wtedy dochodzi dodatkowy narzut na zliczanie — albo użycia funkcji wiersz() — zaś wtedy numeracja będzie prowadzona względem planszy arkusza zamiast względem pozycji w bloku.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: usuwanie duplikatów i puste komorki
Tabela, a w zasadzie kolumna będzie mieć max kilkanaście wierszy, zatem ten koszt obliczeniowy nie będzie (chyba) tak wielki. Problem w tym, że wyniki pobieram potem kolejno w inne miejsca, więc potrzebuję je w następujących po sobie komórkach. Moja znajomość OpenOffice'a jest na tyle słaba, że udało mi się jedynie rozwiązać to dla kolumny 5 wierszowej na funkcji jeżeli, zagnieżdżając ją chyba ze 13 razy. Brzydko to wygląda i głowa boli od pilnowania wszystkich zależności, zabezpieczeń itd. Dodam tylko, że do kolumny jest pobierany tekst z list rozwijanych. Spróbuję rozwiązać to na podstawie Twoich wskazówek.
Dzięki wielkie
Dzięki wielkie
Wojtek
OpenOoffice 4.1.11 na Windows 10
OpenOoffice 4.1.11 na Windows 10
Re: usuwanie duplikatów i puste komorki
Ten szkic naprędce jest dokładnie tym czego potrzebuję.
Jesteś Wielki, dzięki!
Jesteś Wielki, dzięki!
Wojtek
OpenOoffice 4.1.11 na Windows 10
OpenOoffice 4.1.11 na Windows 10