Piotr Stec

Piotr Stec Dyrektor, Polska
Agencja Rozwoju
Regionalnego - PARR

Temat: zaawansowane sortowanie

Mam problem z ułożeniem formuły, która układałaby w kolejności pozycje w kolumnie A na podstawie wartości określonych w innych kolumnach (kolumna B i C).

Najpierw należy ze zbioru wybrać "wiersze", które maja wartość >= 3, później >=2, ale również z uwzględnieniem wierszy z wartościami powyżej 3 po odjęciu od nich wartości całkowitej = 1. Następnie należy ze zbioru wybrać wiersze, w przedziale 1,0 do 1,999999999, ale z uwzględnieniem wartości powyżej 2 (po odjęciu od nich 1) i 3 (po odjęciu od nich 2). Na sam koniec uwzględniamy tylko wartości po przecinku, czyli odrzucamy całkowite 3, 2 i 1 i uwzględniamy reszty po przecinku.

Generalnie w przypadku KW1 powinniśmy otrzymać taką kolejność:

KW1
wiersz 5 - 3,101
wiersz 6 - 2,350
wiersz 11 - 2,233
wiersz 5 - 2,101 (bo, 3,101 - 1 = 2,101)
wiersz 8 - 1,546
wiersz 1 - 1,527
wiersz 12 - 1,469
wiersz 6 - 1,350 (bo, 2,350 - 1 = 1,350)
wiersz 7 - 1,321
wiersz 4 - 1,320
wiersz 3 - 1,239
wiersz 11 - 1,233 (bo 2,233 - 1 = 1,233)
wiersz 10 - 1,140
wiersz 5 - 1,101 (bo 3,101 - 2 = 1,101)
wiersz 9 - 1,064
wiersz 13 - 0,924
wiersz 2 - 0,765
wiersz 1 - 0,527 (1,527 po usunięciu 1)
wiersz 12 - 0,469 (1,469 po usunięciu 1)
wiersz 6 - 0,350 (2,350 po usunięciu 2)
wiersz 7 - 0,321 (1,321 po usunięciu 1)
wiersz 4 - 0,320 (1,320 po usunięciu 1)
wiersz 3 - 0,239 (1,239 po usunięciu 1)
wiersz 11 - 0,233 (2,233 po usunięciu 2)
wiersz 10 - 0,140 (1,140 po usunięciu 1)
wiersz 5 - 0,101 (3,101 po usunięciu 3)
wiersz 9 - 0,064 (1,064 po usunięciu 1)

Nie potrafię stworzyć formuły, która w ten sposób układałaby wiersze :(

Tutaj jest plik z wartościami liczbowymi: http://www.parr.com.pl/pub/plik2.xlsx
Piotr Stec

Piotr Stec Dyrektor, Polska
Agencja Rozwoju
Regionalnego - PARR

Temat: zaawansowane sortowanie

Witam ponownie,

prawie uporałem się z problemem :) zrobiłem to wprawdzie na innym pliku niż w załączniku i trochę naokoło, ale jestem już blisko rozwiązania.

Nie wiem tylko dlaczego przy funkcji tablicowej tam gdzie powinna być wyszukiwana jedna wartość we wszystkich komórkach, których dotyczy funkcja tablicowa, pojawia się ta wartość.

W pliku w załączniku są to kolumny J i AA. W komórce J17 powinna być wartość "małopolskie", a komórki J18:J46 powinny być puste. Analogiczna sytuacja z kolumną J. Co ciekawe, jeżeli np. w zakresie J2:J14 znajdą się co najmniej 2 wartości powyżej 3, wówczas filtrowanie działa poprawnie. Nie wiem gdzie jest błąd :(

plik do pobrania: http://www.parr.com.pl/pub/zeszyt1.xlsx

Aha, i ktoś może wpadnie jak w obszarze J17:AK29 (żółty kolor) w kamach każdego KW wyszukać tyle kolejnych nazw regionów ile jest w komórkach B16:H16
Barbara Bobikau

Barbara Bobikau Excel Expert,
Trener, Analityk

Temat: zaawansowane sortowanie

Witam,

a może takie rozwiązanie wchodzi w grę:
http://przeklej.org/file/DytONV/plik.xlsx

prawdopodobnie trzeba by było jeszcze dodać korektę dla identycznych wartości, które mogą pojawić się w danych Ten post został edytowany przez Autora dnia 06.03.14 o godzinie 14:46
Piotr Stec

Piotr Stec Dyrektor, Polska
Agencja Rozwoju
Regionalnego - PARR

Temat: zaawansowane sortowanie

Pani Barbaro - MEGA! :)

bardzo Pani dziękuję!
Piotr Stec

Piotr Stec Dyrektor, Polska
Agencja Rozwoju
Regionalnego - PARR

Temat: zaawansowane sortowanie

Pani Barbaro,

może jeszcze będzie Pani tak uprzejma i podpowie mi jak w formatowaniu warunkowym zrobić tak aby wyróżnić określoną liczbę kolejnych wierszy? Np. w kolumnie A mam 15 wierszy, a chcę wyróżnić 7, a w kolumnie B 210 wierszy. Idealnie by było aby liczba wierszy w ramach każdej kolumny odwoływała się do konkretnej komórki, w której liczba wierszy do wyróżnienia byłaby określona

Mam nadzieję, że po polsku to napisałem :)
Barbara Bobikau

Barbara Bobikau Excel Expert,
Trener, Analityk

Temat: zaawansowane sortowanie

Powiedzmy, że dane zaczynają się od 2 wiersza (pierwszy jest nagłówkowy).
Proszę zaznaczyć wszystkie komórki do pokolorowania np. A2:B500 i wstawić formatowanie warunkowe za pomocą formuły (Formatowanie warunkowe/nowa reguła/Użyj reguły do określenia komórek, które należy sformatować) w oknie formuły proszę wpisać:
=WIERSZ()-1<=H$1

czyli koloruj gdy numer wiersza minus jeden jest mniejszy lub równy wartości w określonej komórce.
U mnie w H1 jest wartość dla kolumny A, w I1 dla kolumny B. Dzięki temu, że wstawiliśmy adresowanie mieszane (jeden dolar) każda wartość z kolumny odwołuje się do pierwszego wiersza, a jak przejdziemy w bok, to do pierwszej komórki kolejnej kolumny, czyli np. A2, A5 i A100 odwoła się do H1, a B4, B300 do I1.
Piotr Stec

Piotr Stec Dyrektor, Polska
Agencja Rozwoju
Regionalnego - PARR

Temat: zaawansowane sortowanie

Pani Basiu,

wielki szacun! wszystko śmiga aż miło :D
Barbara Bobikau

Barbara Bobikau Excel Expert,
Trener, Analityk

Temat: zaawansowane sortowanie

Cieszę się, jest jednak mały minus rozwiązania, gdy będzie klika takich samych wartości, to wtedy jedna zostaje pominięta.

Może Pan sprawdzić na razie zamieniając wartość wiersza 2, żeby był taki jak 1. Wtedy widać, że brakuje jednej z danych.

Funkcja POZYCJA czasami nadaje ten sam numer pozycji dwóm jednakowym wartościom, innym razem nadaje im kolejne pozycje. Mogę zaproponować pewne rozwiązanie, ale z jedną dodatkową kolumną.
Ponieważ Pana wartości mają 3 miejsca dziesiętne można w kolumnie obok dodać im korektę, taką by nie zmieniała kolejności liczb np. w D2:
=JEŻELI.BŁĄD(B2+WIERSZ()/1 000 000;"")
co dla kolejnych liczb da nam
1,527 1,527002
0,765 0,765003
1,239 1,239004
lub tak:
=JEŻELI.BŁĄD(B2+0,0001-WIERSZ()/1 000 000;"")
co da nam liczby
1,527 1,527098
0,765 0,765097
1,239 1,239096
dodane wartości nie wpłyną na kolejność liczb, gdyż są na odległych miejscach

Następnie postępujemy tak jak poprzednio na samym początku, czyli szukamy pozycji ale odwołując się do kolumny skorygowanej, np. w E2:
=JEŻELI.BŁĄD(POZYCJA(D2;$D$2:$D$53);"")
i tak jak poprzednio w F2:
=JEŻELI.BŁĄD(INDEKS($A$2:$A$53;PODAJ.POZYCJĘ(WIERSZ()-1;$E$2:$E$53;0));"")

Teraz będzie działać dobrze :)Ten post został edytowany przez Autora dnia 07.03.14 o godzinie 16:14

Następna dyskusja:

Sortowanie danych




Wyślij zaproszenie do