Wpis z mikrobloga

#excel #vba #kiciochpyta

Potrzebna pomoc z Excelem. Dokładniej chodzi o sprawdzenie poprawności tablicy decyzyjnej.

O co chodzi?
Mam: wypisane wszystkie możliwe wartości i zrobioną tablicę decyzyjną.
Chcę: otrzymać tabelkę w której będą wszystkie możliwe kombinacje moich wartości wraz z przypisaną odpowiedzią na podstawie tabeli decyzyjnej.

Problem opisałam dokładniej na prostym przykładzie tabeli decyzyjnej "Czy kupić napój?":
https://goo.gl/kFrcmA

Nie znam się niestety na makrach i nigdy nie praktykowałam VBA. Co do funkcji Excelowych- próbowałam ale chyba moja wiedza nie starcza tak daleko aby znaleźć odpowiednie....
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@katharinkaa: stworzenie tabeli nr 3 - listy wszystkich kombinacji wariantów (bez ostatniej kolumny) jest banalne. Cala zabawa zaczyna się przy wypelnianiu ostatniej kolumny. To na pewno nie jest trywialne, a poziom skomplikowania zależy między innymi od:
- rodzajów operatorów użytych w regulach - w przykladzie widać co najmniej 3 - zbiór wartości, przedzial wartości (zamknięty i otwarty), >=
- tego, jak dokladnie te reguly są zapisane - czy na przyklad zbiory wartości
  • Odpowiedz
@brak_nicku:
1. Tak, tabela decyzyjna (tabela 2) z kupowaniem napoju celowo jest sprzeczna (w sensie, że zakresy wartości nachodzą na siebie).
Dlaczego tak zrobiłam? Ponieważ podejrzewam, że moja rzeczywista tabela decyzyjna też jest sprzeczna. Po prostu jest już tak wielka, że nie mam pewności czy wszystko z nią ok. Dlatego właśnie potrzebuję to sprawdzić i do tego mi posłużyłaby tabela 3.
Potrzebuję zweryfikować zarówno kompletność jak i brak sprzeczności.
2. Rodzaje operatorów:
  • Odpowiedz
Obstawiam, że Power Query też by podołał :)


@DwaNiedzwiedzie: nie dzialalem zbyt wiele z PQ, ale mam wątpliwości, czy poradzi sobie z regulami zapisanymi w pojedynczych komórkach, gdzie w dodatku jeszcze mogą wystąpić różne operatory
  • Odpowiedz
Serdecznie polecam nadrobić zaległości

@DwaNiedzwiedzie: na razie nie mam takich planów, bo zbyt malo obecnie korzystam z Excela, ale na pewno kiedyś chętnie się zapoznam. W tej chwili korzystam z Excela 2013, co też nie zachęca do nauki, bo jakkolwiek PQ jest dostępne, to bez praktycznie żadnej obslugi z poziomu VBA.

Co do zalączonego pliku, to chociaż nie do końca rozumiem, to widać, że możliwości są. Bardzo chętnie zobaczylbym rozwiązanie
  • Odpowiedz
Tak w zasadzie to cała magia dzieje się właśnie w PQ, makrem jedynie odświeżasz tabele :)


@DwaNiedzwiedzie: być może, tylko pytanie czy z użyciem tej magii można sprawić, żeby to dzialalo dla dowolnej ilości tabel wejściowych - w zadaniu mowa o 8, każda kolumna obslugiwala wszystkie operatory (lącznie z pustym) - oczywiście bez bzdur typu zakres dla tekstu i dawala wynik taki jak w opisie
  • Odpowiedz
@DwaNiedzwiedzie: jak się doda żółty do listy kolorów, to się sypie, ale... i tak mi się podoba:)

czy z użyciem tej magii można sprawić, żeby to dzialalo dla dowolnej ilości tabel wejściowych


W przykladzie są 2 tabele wejściowe, w rzeczywistym zadaniu 8, chodzilo o to, czy da się to zrobić w sposób dynamiczny - zadziala i dla 2 i dla 8:)
  • Odpowiedz
jak się doda żółty do listy kolorów, to się sypie


@brak_nicku: Fakt, błąd modelu uproszczonego :) W tej chwili kolor wyszukiwany jest w tekście "kolor napoju" metodą zawiera / nie zawiera, więc zwykłe "o" zhakuje system, ale nie problem rozbić to na tablicę i porównywać 1:1.

czy da się to zrobić w sposób dynamiczny - zadziala i dla 2 i dla 8


Ok, rozumiem - i tak, da się. Nawet
  • Odpowiedz
@DwaNiedzwiedzie: wynika z tego, że calkiem fajną zabawkę MS sporządzil:) Nawet zaglądalem w bebechy, co nieco udalo się zrozumieć, ale samemu próbowalem zrobić prosty iloczyn kartezjański 3 tabel i jakoś nie wychodzilo... Widać trzeba zacząć od podstaw, ale to może kiedyś jak się będę bardziej nudzil:)

Wniosek jest jeden - żeby tego typu zadanie zrobić czy to w VBA czy to w PQ trzeba mieć choć trochę pojęcia o programowaniu.
  • Odpowiedz