Search

Visitors Counter

TodayToday14
YesterdayYesterday69
This_WeekThis_Week152
This_MonthThis_Month1750
All_DaysAll_Days140718
Your_IP 3.239.51.78

W tym poście opowiem jak filtrować dane w Sharepoint według miesiąca. Filtr ten można również wykorzystać do danych w Excelu. 

Założenie:

Mamy listę w której umieszczona została kolumna "Data". 

Cel:

Chcemy aby w bieżącym widoku wyświetlane były dane tylko z tego miesiąca.

Rozwiązanie:

Aby filtrować dane w Sharepoint, w modyfikacji widoku, w pozycji "Filtr" zaznaczamy opcję "Pokaż elementy tylko wtedy, gdy następujące stwierdzenie jest prawdą:"

Filtrowanie np. ostatnich 30 dni wykonujemy zaznaczając "Pokaż elementy gdy kolumna" Data (zgodnie z założeniami) jest mniejsza lub równa [Dzisiaj]-30

To jednak nie do końca spełni nasze oczekiwania ponieważ zakres będzie zawierał również część poprzedniego miesiąca. Rozwiązanie tego problemu wymaga stworzenia dodatkowych kolumn do naszej listy. Pierwsza będzie zawierała datę początku miesiąca, druga natomiast jego końca.  Przechodzimy więc w odpowiednie miejsce i dodajemy kolumnę "Start" - typ informacji w tej kolumnie - zaznaczamy Obliczeniowe (obliczenia oparte na innych kolumnach). W polu formuła wpisujemy następujące wyrażenie =DATA(ROK(Data);MIESIĄC(Data);1) Funkcja ta zwróci liczbę dni od 1 stycznia 1900 roku. Jako argumenty podajemy rok, miesiąc i dzień. W naszym przypadku rok i miesiąc są funkcjami przyjmującymi jako argument kolumnę "Data". Funkcje te wyciągają potrzebne nam informacje. Jako dzień zawsze przyjmujemy 1. Stworzonej właśnie kolumny nie dodajemy do widoku domyślnego ponieważ informacje z niej będą nam potrzebne tylko do filtrowania danych.

Kolejną kolumną będzie kolumna "End". Sytuacja wygląda bardzo podobnie jak poprzednio, tylko tym razem nie wiemy, ile dany miesiąc ma dni. Problem ten obchodzimy za pomocą prostej sztuczki. Oto jak wygląda wyrażenie w tym przypadku =DATA(ROK(Data);MIESIĄC(Data)+1;1)-1 Początek pozostał taki sam, jednak do miesiąca dodaliśmy 1. To sprawiło, że mając datę, przykładowo 2014-11-04 otrzymaliśmy liczbę dni do daty 2014-12-01. Na końcu wyrażenia pojawia się jednak jeszcze -1 który to odejmuje ten 1 niepotrzebny dzień. Dzięki temu otrzymujemy zawsze datę końca miesiąca bez względu na to ile on ma dni.

Co możemy z tymi informacjami zrobić? Mając te dane sytuacja jest prosta. Wracamy do naszego edytowania widoku, zaznaczamy pokaż elementy tylko wtedy, gdy następujące stwierdzenie jest prawdą: Pokaż elementy, gdy kolumna "Start" jest mniejsze lub równie [Dzisiaj] i gdy kolumna "End" jest większe lub równe [Dzisiaj].

Jeszcze raz dla przypomnienia, w kolumnie "Start" mamy pierwszy dzień miesiąca uzależniony od kolumny "Data", natomiast w kolumnie "End" mamy ostatni dzień tego samego miesiąca.

Poniżej zrzut ekranu jak to powinno wyglądać