Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
ID tematu: 63640 Skopiuj do schowka Czy da się ustawić w TP ustawić sumy wierszy zależnie od ...
Autor Wiadomość
forest67
Exceloholic


Posty: 111
Wysłany: 01-01-2019, 20:01   Czy da się ustawić w TP ustawić sumy wierszy zależnie od ...

Witam Noworocznie !

wszystkim życzę radości na co dzień, zdrowia (również do Excela ;-) i szczęścia :beer

A mam dzisiaj problem taki:
- mam w obszarze filtra wymiar, który wskazuje na 4 działy w mojej firmie i jeśli mam wybrany tylko jeden dział -nie są mi potrzebne sumy końcowe wierszy. Ale kiedy wybiorę 2 lub więcej wtedy są wskazane. I chciałbym jakoś dynamicznie ukrywać lub pokazywać "Sumę końcową wierszy" w zależności od tego czy na filtrze mam wybrany jeden czy więcej pozycji.

Próbowałem to jakoś ugryźć w VBA, ale żadne zdarzenie TP które widzę chyb nie nadają się.

Pozdrawiam
Forest67

Przykład.xlsm
Pobierz Plik ściągnięto 31 raz(y) 223.29 KB

ID posta: 359410 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 02-01-2019, 09:26   

Wg mnie się nie da, ale zawsze możesz dodać batona, który ukryje Ci kolumnę C, jak nic nie ma w D :-D
Oczywiście należy pamiętać aby odkrył C jak jednak coś w D się pojawi.
Ja staram się unikać ingerencji VBA w pracę TP, jest mało zdarzeń i nawet jak coś teraz zadziała, to mogą się pojawić potencjalne problemy przy nowych wersjach Excela, ponieważ TP się mocno rozwijają a VBA już prawie w ogóle.
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359434 Skopiuj do schowka
 
 
forest67
Exceloholic


Posty: 111
Wysłany: 02-01-2019, 13:42   

Dzięki za info.
Pozdrawiam
ID posta: 359472 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 04-01-2019, 00:53   

Obywatele!
Uważam, że uprawiacie czarnowidztwo. :-)

Proszę do modułu arkusza TP wstawić
Kod:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
    Dim lSel        As Long
    Dim slcrItem    As SlicerItem

    lSel = 0
   
    For Each slcrItem In Target.Slicers(2).SlicerCache.SlicerItems
        lSel = lSel + slcrItem.Selected * -1
    Next slcrItem
   
    Me.Columns("C").Hidden = (lSel = 1)
End Sub

Czy zaświeciło słoneczko?
(Wersja "nakolanna" :-) )

Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359614 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 04-01-2019, 01:03   

Artik napisał/a:
Czy zaświeciło słoneczko?
no nie bardzo, bo ukrywasz KONKRETNĄ kolumnę arkusza a nie tą z sumą PT, czyli robisz dokładnie to co opisałem w swoim poście (zdarzeniowo, nie przez batona).
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359615 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 04-01-2019, 01:04   

Ale słoneczko chyba świeci. Prawda?

Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359616 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 04-01-2019, 01:06   

No pewnie, że świeci, cóż by to było życie bez słoneczka :-P
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359617 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 04-01-2019, 01:42   

bodek napisał/a:
no nie bardzo, bo ukrywasz KONKRETNĄ kolumnę arkusza a nie tą z sumą PT
Mówiłem przecież, że to na kolanie robione.

To teraz ukrywam kolumnę TP z sumą, a nie kolumnę arkusza.
Kod:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
    Dim lSel        As Long
    Dim slcrItem    As SlicerItem

    lSel = 0

    For Each slcrItem In Target.Slicers(2).SlicerCache.SlicerItems
        lSel = lSel + slcrItem.Selected * -1
    Next slcrItem
   
    Application.EnableEvents = False
    Target.RowGrand = (lSel <> 1)
    Application.EnableEvents = True
   
End Sub
:terefere

Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359621 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 04-01-2019, 01:47   

Artik, brawo rozwiązałeś problem pytającego! Kolejny kod VBA do zaimplikowania w projekcie.
Ale czy nie wyczuwasz, że tu chodziło o kosmetykę rozwiązania a nie o jego merytorykę, taka fanaberia, sorry forest67, usera?
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359622 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 04-01-2019, 01:53   

Myślę, że dane powinniśmy pokazywać w jak najprostszej postaci. Duplikowanie danych wprowadza niepotrzebny szum. Tak więc trzymam w tym przypadku sztamę z forestem67. :-)

Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359623 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 04-01-2019, 01:59   

E tam, jak ktoś nie rozumie pojęcia suma/razem to cóż napisać?
Wyciąganie armat na pokład (VBA) po to, żeby ktoś zrozumiał, że suma/razem to ..., szkoda tłumaczyć.
Ale oczywiście "higienicznie" rzecz ujmując czysto, jak dla baranów, no bo przecież barany to czytają :mrgreen: (żebyś wiedział, że tak :-P )
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359624 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 04-01-2019, 03:00   

bodek napisał/a:
E tam
Bodzio, nie machaj tak ręką. :-) To nie chodzi o to czy mamy do czynienia z baranami, tylko o otaczający, wręcz osaczający nas natłok informacji. Chcąc podejmować szybko i trafnie decyzje potrzebujemy tylko istotnych w danym momencie danych. Będąc na jakimś decyzyjnym stanowisku, gdzie musisz podejmować kilkadziesiąt decyzji w ciągu dnia (może i godziny) każdy szum Cię niepotrzebnie rozprasza, wydłużając proces. Stąd dążenie do sterylności.
Tak, powinno być sterylnie. :-)
Zobacz. Taką TP wymyślono między innymi po to, by było higieniczniej. Przecież mógłbyś dalej obrabiać surowe dane formułkami lub makrami. Tylko ile decyzji w jednostce czasu podejmiesz? Te formułki/makra to też niepotrzebny szum. Klik, klik (może jeszcze jeden klik) i masz wynik. Ale natłok wielu wyników rodzi potrzebę dalszego oczyszczenia, jak choćby przedmiotowe ukrycie kolumny gdy jest zbędna.
Można by jeszcze mówić o wrażeniach estetycznych. Niejednokrotnie z zazdrością patrzyłem na niektóre przygotowane raporty. Też bym tak chciał. Pracować w miłym otoczeniu dobrze skonstruowanych dashboardów. Chociaż... kwiatki chyba milsze oku. :-)

A barany niech podejmują decyzje. Byle by tylko nie wkładali łapek do mojej kieszeni.
Niestety, ostatnie zdanie jest tylko pobożnym życzeniem.


Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359626 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 06-01-2019, 23:08   

Artik, adwersarzu mój kochany :mrgreen: , współczesne raporty to nie tabelka czy wykres ale ich zbiory, "spolszczając" -> daszbordy. Jest tam wiele TP, wiele wykresów, wskaźniki KPI itd, i nie ma miejsca na "ta konkretna TP" teraz tak a w inny przypadku Tak, wygląda to inaczej niż się wydaje, po prostu nie ma miejsca na VBA. To są elastyczne formy raportowania, łatwe do zmiany konfiguracji ustawień dla standardowych userów Excela.
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359866 Skopiuj do schowka
 
 
Artik 



Wersja: Win Office 365
Pomógł: 2652 razy
Posty: 8794
Wysłany: 06-01-2019, 23:18   

Widzę mój drogi interlokutorze, że zamierzasz mnie gnębić. Rozumiem intencję. Nie to że nie masz na kim pojeździć, co chcesz mnie zmotywować. Ale trafiłeś na kamień. :mrgreen:
Jeszcze przyjdziesz w łaski, bo Twoje PQ nie da rady. Jeszcze przyjdziesz... :-)

Artik
_________________
Persistence is a virtue in the world of programming.
ID posta: 359868 Skopiuj do schowka
 
 
bodek 


Wersja: Win Office 2016
Pomógł: 947 razy
Posty: 2709
Wysłany: 06-01-2019, 23:45   

Artik napisał/a:
Jeszcze przyjdziesz w łaski, bo Twoje PQ nie da rady. Jeszcze przyjdziesz...
No nie przyjdę, bo po co? PQ po prostu da radę, dlaczego?
- ono zawiera w sobie dorobek wielu narzędzi Excela, to multimaszyna do przekształceń, obejmująca również skomplikowane algorytmy podziału/rozdziału danych
- operacje się wyklikuje z interfejsu PQ, a nie pisze/programuje w VBA, nie ma litości, wiadomo co wygra
- VBA uczysz się latami, PQ co najwyżej miesiącami

Oczywiście, na tym etapie rozmawiamy o problemie konsolidacji danych PQ vs VBA.

Zresztą, ja myślę, że to "czas" przyzna rację jednemu z nas.
_________________
Szkolenia z Excela, Power Query, Power Pivot, wizualizacje danych w Excelu
ID posta: 359869 Skopiuj do schowka
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.marketingNET.pl

Archiwum

Strona używa plików cookies.

Kliknij tutaj, żeby dowiedzieć się jaki jest cel używania cookies oraz jak zmienić ustawienia cookie w przeglądarce.
Korzystając ze strony użytkownik wyraża zgodę na używanie plików cookies, zgodnie z bieżącymi ustawieniami przeglądarki.
Sprawdź, w jaki sposób przetwarzamy dane osobowe