konto usunięte

Temat: Lista rozwijana pod warunkiem

Witam!

Gryzę się z pewnym tematem. Chcę rozwiązać temat bez użycia makra w Excel 2007.

Mam tabelę z datami każdego dnia meisiąca
kolumna A data
kolumna B czy święto (tak/nie)
kolumna C dzień tydonia
...

Tworze sobie listę rozwijaną za pomocą poprawności danych o pozycjach
tak
nie

Teraz chciałbym wstawić funkcję na wzór:
Teraz chciałbym wstawić funkcję:
- Jeśli C1 = niedzilela -> D1 = 8
- Jeśli nie -> wstaw listę rozwijaną czy święto (tak/nie)

Da się to zrobić bez makra?
Grzesiek Bienias

Grzesiek Bienias Opis w High
Definition i
dźwiękiem 7.1 :)

Temat: Lista rozwijana pod warunkiem

Paweł C.:
Witam!

Gryzę się z pewnym tematem. Chcę rozwiązać temat bez użycia makra w Excel 2007.

Mam tabelę z datami każdego dnia meisiąca
kolumna A data
kolumna B czy święto (tak/nie)
kolumna C dzień tydonia
Tworze sobie listę rozwijaną za pomocą poprawności danych o pozycjach
tak
nie

Teraz chciałbym wstawić funkcję na wzór:
Teraz chciałbym wstawić funkcję:
- Jeśli C1 = niedzilela -> D1 = 8
- Jeśli nie -> wstaw listę rozwijaną czy święto (tak/nie)

Da się to zrobić bez makra?

Generalnie dwóch pieczeni na jednym ogniu bez makr upiec się nie da (czytaj: trochę się trzeba będzie naklikać).

Dla każdego dnia tygodnia tworzysz definiujesz nazwę (nazwa zdefiniowanej nazwy musi być zgodna z tymi, jakie masz w kolumnie C);
Wartości dla każdej zdefiniowanej nazwy to TAK i NIE za wyjątkiem niedzieli, gdzie chcesz mieć coś innego;
W kolumnie D wstawiasz poprawność danych, w którym używasz formuły:
 = ADR.POŚR(C2) ; zakładam, że w pierwszym wierszu jest jakiś nagłówek

W efekcie dostaniesz w kolumnie D listę rozwijaną, która będzie pozwalała na ograniczony wybór w zależności od tego, co potrzebujesz.

Teraz aby na szybko dostać warunek 'jeśli C1 = niedziela -> D1 = 8 trzeba zrobić małe oszustwo :)
Otóż tam gdzie już jest sprawdzanie poprawności formuły wpisać się nie da, ale jest na to rozwiązanie:
- potrzebną formułę wpisujesz w pierwszej wolnej kolumnie w w pierwszym wolnym wierszu, w którym chcesz mieć wynik; formułę należy wpisać tak, jakby była wpisywana w kolumnie D;
- kopiujesz ją z paska formuły (sposób jest ważny);
- wklejasz w kolumnie D;
- przeciągasz wedle potrzeb;

W ten sposób dostajesz z jednej strony swoją formułę, z drugiej listę rozwijaną.

konto usunięte

Temat: Lista rozwijana pod warunkiem

Dzięki Grzesiek.

Niesamowite, że to działa. Przecież to kompletnie sprzeczne z prawami excela :) Wpisywanie formuły "na siłę" na komórkę skonfigurowaną pod poprawność danych.
Gdy to przeczytałem - pomyślałem, że Excel wyrzuci błąd ale nie wyrzucił :-)
Makrem by się to zrobiło w pół minutki ale niestety w moim arkuszu nie może być makr dlatego wielkie dzięki za udane kombinatorstwo :)
Ma to jeden słąby punkt:
Po takiej manipulacji raz wybrana wartość z listy rozwijanej niweluje w tym polu regułę.
Po wybraniu takiej wartości formuła znika i nie ma już zastosowania, co przy zmieniających się np datach rodzi problemy. No ale w końću nie jest to funkcjonalność zapewniona przez producenta.

Jeszce raz dzięki

Pozdrawiam
Krzysztof Kajetanowicz

Krzysztof Kajetanowicz CFA. Wyceny i
modelowanie
finansowe

Temat: Lista rozwijana pod warunkiem

Inne rozwiązanie, może niezbyt eleganckie, ale odporne na starania użytkowników próbujących "zepsuć" arkusz: poświęcasz dwie dodatkowe kolumnu (można je oczywiście ukryć) w danym wierszu. Niech to będzie kolumna E i F. W kolumnie E wpisujesz wszędzie "tak". W kolumnie F wpisujesz formułę - przykładowo w drugim wierszu:

=JEŻELI(C2=1;"tak";"nie")
(zakładam, że dzień tygodnia jest liczbą pokazywaną w formacie dddd)

Następnie w D2 ustawiasz poprawność danych - lista - wpisując we właściwe pole:

=E2:f2
- oczywiście bez dolarów przed dwójką, aby dało się przeciągnąć.

Teraz użytkownik wybiera pomiędzy "tak" i "tak" (jeśli jest niedziela) lub między "tak" i "nie" (jeśli nie jest niedziela).

Jeśli w przypadku niedzieli chcesz mieć w kolumnie D ósemkę (pokazywaną jako "święto" czy cokolwiek innego), to "tak" w formule zastępujesz ósemką, ustawiając odpowiedni niestandardowy format w F.

Rozwiązanie nie jest odporne na zmianę daty już po zaznaczeniu, czy jest święto. Jeśli źródło w F się zmieni, bo zmieni się dzień tygodnia w C, to trzeba ręcznie zaktualizować D (można użyć polecenia zaznacz nieprawidłowe).Ten post został edytowany przez Autora dnia 28.10.13 o godzinie 14:14

Następna dyskusja:

lista rozwijana - jak zrobić?




Wyślij zaproszenie do