Iloczyn kartezjański
by vbatools on Feb.03, 2020, under Excel, Oprogramowanie, Płatne

Dodatek którym możesz obliczyć wszystkie możliwe kombinacje liczb, liter czy całych fraz z zaznaczonego obszaru komórek. Ilość do obliczenia musi jednak zawierać się od 2 do 7 elementów, w przeciwnym razie nie będzie możliwy ich zapis do arkusza Excela.
Zastanawiał się ktoś jak ciężko jest odnaleźć kod do bankomatu potencjalnie znając wszystkie cyfry. Ilość kombinacji nie jest jednak w tym przypadku zastraszająca, dlatego w niektórych krajach wprowadzono sześciocyfrową kombinację. Dlaczego zapytacie? oto odpowiedź:

Zatem maksymalna ilość, którą można zwrócić w jednej kolumnie to 7, ponieważ daje to niecały milion kombinacji. Już wiesz dlaczego w niektórych przypadkach musisz podać min 8 znaków dla hasła?
Oto prosty przykład bazujący na literach (które można zastąpić wyrazami zawierającymi przecinek lub średnik). Praca z dodatkiem jest trywialnie prosta. Zaznaczamy ciągły obszar, a wynik będzie pokazany w nowo utworzonym arkuszu kol. “A”:

Przykład z dowolnymi frazami:

Opcja “oblicz wszystko” sprowadza się do tego, iż do puli wyników dokładane są kombinacje pomniejszone o jeden element. Czyli, jeśli zaznaczono 6 wyrazów to w wyniku mechanizm dodaje kombinacje z 5-ciu, 4-rech, 3-ch…itd, a nie kończy na jedynie kombinacji z 6-ciu.
No dobra, ale ktoś by zarzucił – przecież to nie jest w istocie iloczyn kartezjański. Ok w takim razie dodaje możliwości tworzenia wyniku złożonego z 2ch lub 3ch, a nawet z 4ch list o dowolnej długości dostępne od v2:
Nie jest to jakiś projekt NASA, bo wynik takich zestawień można bez problemów uzyskać w Tabeli przestawnej lub w PQ, no ale dodatkiem proste kliknięcie w zakresy daje oczekiwany efekt w sekundę.
Dodatek zgodny z Office >= 2010 (oraz 365) dla 32/64bit
Zainteresowani zakupem dodatku proszeni są o kontakt i zapoznanie się z warunkami licencji.
(c) Shon Oskar – www.VBATools.pl
Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.