Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Excel - filtrowanie wg zakresu dat

01 Lut 2011 10:49 10301 7
  • Poziom 8  
    Witam

    Mam tabelę w excelu 2000:
    Zaczyna się od 6 wiersza i kolumny B (6 wiersz to nagłówki tabeli).
    W kolumnie C wpisywane są daty (w formacie RRRR-MM-DD).

    Chciałbym aby po wpisaniu dat w komórkach: C3 i C4 (i zatwierdzeniu w obojętnie jaki sposób, np. po wciśnięciu przycisku filtruj umieszczonym obok) tabela została przefiltrowana według podanego zakresu w C3 i C4 (komórka C3 zawiera dolne kryterium, komórka C4 to górne kryterium).
    Usunięcie dat w polach C3 i C4 (i po jakimś zatwierdzeniu) filtr byłby usuwany.

    Liczę na Wasze wskazówki, bo siedzę nad tym i siedzę i ręce mi już opadają.

    Kombinowałem z pośrednim rozwiązaniem, np. aby w ukrytej kolumnie, dajmy na to X, daty zamieniane były na cyfry - i wtedy można by użyć filtrowania według zakresu cyfr - jeśli bezpośrednie filtrowanie wg dat było zbyt kłopotliwe, ale jak taki filtr ustawić w VBA?
    W VBA jestem raczej początkujący, ale już coś tam próbuję.

    Z góry dziękuję za podpowiedzi.
  • Poziom 11  
    Moja propozycja jest taka, żebyś stworzył sobie listę tzn. zaznacz całą tabelę wraz z nagłówkami i naciśnij CTRL+L.

    Lista umożliwi sortowanie "między" czyli wpisujemy zakres i filtrujemy, to powinno rozwiązać Twój problem ale czy będzie satysfakcjonujące...
  • Poziom 8  
    Dziękuję za zainteresowanie.
    Sęk w tym, że autofiltr odpada.

    Mam zamiar dostosować arkusz dla moich kolegów z pracy, by to tak "łopoatologicznie" chodziło. Żeby mieli możliwość wpisania zakresu filtrowania - który jest cały czas widoczny i łatwy do zmiany.
  • Poziom 40  
    To bez makra tego nie widzę. Załącz przykładowy plik (jeżeli to excel2007 to spakuj zipem)

    dodane po chwili.
    --------------------------------
    A może jednak bez makra z kolumna pomocniczą i filtrem.

    Ustawiasz daty i mówisz kolegom że mają wcisnąć przycisk przy kolumnie pomoc i tam wybrać "X". I tyle

    Jeżeli i to nie pasuje to zostaje tylko makro.
  • Pomocny post
    Poziom 40  
    Tu masz proste makro: (sprawdza kolumny dopóki jest wartość w kolumnie C [Cells(i, 3) <> ""] zaczynając od 7 wiersza [i=7]
    Code:

    Sub filtr()
    a = Range("C3")
    b = Range("C4")
    i = 7

    Do While Cells(i, 3) <> ""

        If (Cells(i, 3) >= a) And (Cells(i, 3) <= b) Then
            Rows(i).EntireRow.Hidden = False
          Else
            Rows(i).EntireRow.Hidden = True
        End If

    i = i + 1

    Loop

    End Sub


    Poniżej przykład
  • Poziom 8  
    O to ciekawe rozwiązanie.
    O ukrywaniu wierszy nie pomyślałem.
    To rozwiązanie mi się przyda.
    Dzięki.
  • Poziom 28  
    To ja tu też wetknę swoje trzy gr. :D
    A może by tak skorzystać z filtra zaawansowanego?
    W pliku przykład użycia.

    Dodane:

    Podobno najprostsze rozwiązania są najlepsze.