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
Zamknięty przez: OShon
2012-02-09, 09:54
Zmienna jako kryterium w autofiltrze
Autor Wiadomość
free25 
świeżak


Posty: 2
Wysłany: 2012-01-15, 12:46   Zmienna jako kryterium w autofiltrze

Cześć
czy jest możliwość podpięcia zmiennej do autofiltra w Excelu? Nie mogę tego obejść. Zerowanie filtra makrem nie stanowi problemu i działa. Natomiast próba poniższego kodu nie działa -znikają wszystkie wiersze tzn. pokazuje, że brak jest danych odpowiadających założeniu.

Kod:
podaj = InputBox("Podaj datę w formacie - RRRR-MM-DD", "Filtr", Date)

If podaj <> "" Then Selection.AutoFilter Field:=9, Criteria1:=podaj


Wybór np. 2011-01-15 bezpośrednio przez wybór kryterium na filtrze w Excelu pokazuje dobry wynik, uruchomienie ze zmienną przez makro = zbiór pusty.

Da się to zrobić, ew. czy jest jakaś alternatywa?


Pozdrawiam
free25
ID posta: 144528 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

master_mix 
Excel Expert



Pomógł: 977 razy
Posty: 1615
Wysłany: 2012-01-15, 13:03   

Kod:
If IsDate(podaj) Then Selection.AutoFilter Field:=1, Criteria1:=CDate(podaj)
_________________
******************************************
Podejmę współpracę (pracę) w zakresie tworzenia aplikacji arkusza kalkulacyjnego z wykorzystaniem VBA.
Wrocław i okolice …lub zdalnie.
******************************************
ID posta: 144530 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

OShon 
Excel Expert



Zaproszone osoby: 41
Pomógł: 620 razy
Posty: 2037
Wysłany: 2012-01-15, 16:06   

Popatrz też tutaj: Autofiltr Max na dacie o różnych formatach
_________________
MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools
ID posta: 144552 Skopiuj do schowka
 
 
free25 
świeżak


Posty: 2
Wysłany: 2012-01-16, 19:26   

master_mix - dzięki, ale konwersje testowałem wcześniej. Nie działają w moim przypadku.

OShon - przystosowałem Twój przykład do moich założeń i sprawdza się 100%.


Dzięki, do zamknięcia :)
ID posta: 144717 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

Nazarenus
słuchacz


Posty: 13
Wysłany: 2012-02-08, 13:41   

Cze wszystkim!
Sprawdzam, próbuję i nic... Widać cienki jestem, dlatego potrzebuję pomocy: u mnie to nie działa! Potrzebuję przeszukać kolumnę z datami i wszystkie daty starsze niż dzisiejsza zaznaczyć (docelowo wydrukować zaznaczenie).
Przykład OShon'a jakoś się u mnie nie sprawdził - pewnie z mojej winy...
Dodam, że daty te są poukładane kolejno od najstarszej.
Pozdrawiam!
ID posta: 147879 Skopiuj do schowka
 
 
OShon 
Excel Expert



Zaproszone osoby: 41
Pomógł: 620 razy
Posty: 2037
Wysłany: 2012-02-08, 14:28   

Nie widzę tutaj sposobu bez umieszczenia przykładu jako załącznika.
_________________
MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools
ID posta: 147889 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

Nazarenus
słuchacz


Posty: 13
Wysłany: 2012-02-08, 17:09   

Jasne!
Załączam arkusz, bardzo prosty (zawiera tylko dwie kolumny). Chodzi jeszcze raz o to, żeby uruchomiony kod zaznaczył w kolumnie b i c tylko te komórki, które mają datę inna (starszą) niż obecna.

Temp.zip
Pobierz Plik ściągnięto 7 raz(y) 11.85 KB

ID posta: 147917 Skopiuj do schowka
 
 
OShon 
Excel Expert



Zaproszone osoby: 41
Pomógł: 620 razy
Posty: 2037
Wysłany: 2012-02-08, 23:16   

Zaznaczył czym:
  • kolorem
  • wypełnieniem
  • pogrubieniem
  • kursorem

załóżmy że kolorem
Kod:
Sub zaznacz()
Dim x&, max_row&, data As Date
max_row = Cells(Rows.Count, "c").End(xlUp).Row
For x = 3 To max_row
    data = Cells(x, "c").Value
    If data > Format(Now, "YYYY-MM-DD") Then
        Range(Cells(x, "b"), Cells(x, "c")).Font.Bold = True
    Else
        'na wypadek zmiany dat względem zaznacznia
        Range(Cells(x, "b"), Cells(x, "c")).Font.Bold = False
    End If
Next x
End Sub

jednakże to samo można uzyskać prościej, po przez formulę i formatowanie warunkowe:

XL_Formatowanie_warunkowe_starsze_niż_teraz.png
Plik ściągnięto 4 raz(y) 36.36 KB

_________________
MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools
ID posta: 147962 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

Nazarenus
słuchacz


Posty: 13
Wysłany: 2012-02-09, 08:27   

Myślałem o czymś takim:

data = InputBox("Podaj datę w formacie: RRRR/MM, np 2012/01", "DATA")

wpisuję datę (lub nawet zakres dat) po czym kod zaznacza komórki - kolumna z "lp." i kolumna z datą. Po tym zaznaczeniu wystarczy np.:

ActiveWindow.SelectedSheets.PrintOut Copies:=2, Collate:=True, IgnorePrintAreas:=False

Czy chciałbym osiągnąć coś w rodzaju raportu dla określonego miesiąca drukowanego spośród dat zawierających się w kilku miesiącach.

Pozdrawiam!
ID posta: 147972 Skopiuj do schowka
 
 
OShon 
Excel Expert



Zaproszone osoby: 41
Pomógł: 620 razy
Posty: 2037
Wysłany: 2012-02-09, 09:53   

Nazarenus , nie zauważyłem tego wcześniej ale wcięłeś się z tym problemem w sprawkę kogoś innego (czego nie tolerujemy) ponieważ nasze odpowiedzi na inny temat może nie interesować osobę, która założyła posta.

Druga sprawa to nie reprezentatywny załącznik co do oczekiwać.
Twoja ostatnia wypowiedź nijak się ma do załącznika.

Temat zamykam - założysz nowy, ale wcześniej zastanowisz się nad jego sformułowaniem - inaczej warn.
_________________
MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools
ID posta: 147983 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
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