Autofilter Field kohtaan kaava

yks.kysymys

Moi.
Minulla on 1 rivillä päivämääriä, ja sen alla soluja eri väreillä.

Miten saan napin autofiltertoiminnon toimimaan siten että se suodattaa tämän päivän kohdan tietyllä värillä olevat rivit?

Sain sillä tavalla toimimaan että sarakenumero on tietty (Field:=8)
Miten saan sen että nappi valitsee tämän päivän kohdalta sarakkeen (esim. AA1) ja suodattaa siitä punaisella värillä olevat solut (eli Field: ( tilalle AA1 vaastaava sarake tänään, huomenna AB1 sarake, jne

Private Sub ToggleButton1_Click()

If ToggleButton1.Value = True Then
On Error Resume Next
ActiveSheet.Range("$A$8:$CDZ$95").AutoFilter Field:=8, Criteria1:=RGB(255, 0 _
, 0), Operator:=xlFilterCellColor


Else
On Error Resume Next
ActiveSheet.Shapes.Range(Array("ToggleButton1")).Select
ActiveSheet.Range("$A$8:$CDZ$95").AutoFilter Field:=8

End If
End Sub

6

311

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • automaatisesti löydät sarakkeen VBA:ssa
      Application.WorksheetFunction.Match(cdbl(Date), Range("8:8"))

      Keep EXCEling
      @Kunde

    • yks.kysymys

      Kyseessä on siis aikataulu, jossa eri tapahtumien soluja eri väreillä
      Siis päivämäärät ovat rivillä 1
      tapahtumat ovat alla olevilla riveillä vuoden ajalta, eli sarakkeet B:NB

      Tarkoitin sellaista toimintoa että nappia alas painamalla näkyisi vain tämän päivän kohdalla vaikkapa punaisella värillä merkityt tapahtumat, eli valitaan sarakke tämän päivän kohdalta, ja siitä sarakkeesta suodatetaan punaiset solut eri riveiltä.

      Sain tehtyä napin joka hakee tämän päivän mutta että samalla napilla vielä samalla suodattaisi värin mukaan...

    • jos antamasi kaava toimii niin kuten sanoin postauksessani löydät oikean sarakkeen ko päivänä
      Application.WorksheetFunction.Match(cdbl(Date), Range("8:8"))...

      lisättynä toimivaan koodiisi

      Private Sub ToggleButton1_Click()
      On Error Resume Next
      If ToggleButton1.Value = True Then

      ActiveSheet.Range("$A$8:$CDZ$95").AutoFilter Field:=Application.WorksheetFunction.Match(CDbl(Date), Range("1:1")), Criteria1:=RGB(255, 0 _
      , 0), Operator:=xlFilterCellColor

      Else

      ActiveSheet.Shapes.Range(Array("ToggleButton1")).Select
      ActiveSheet.Range("$A$8:$CDZ$95").AutoFilter Field:=Application.WorksheetFunction.Match(CDbl(Date), Range("1:1"))

      End If
      End Sub

      Keep EXCEling
      @Kunde

      • yks.kysymys

        Kiitos.
        Saisiko vielä suodatusta niin että se valitsisi kaikki muut värit paitsi valkoisen.
        En saanut erisuuri merkkiä (<>) toimimaan = merkin tilalla


      • yks.kysymys

        Tällainen koodi ei siis toimi:
        Criteria1:<>RGB(255, 255, 255), Operator:=xlFilterCellColor

        Mikä toimisi jotta suodattaisi muut paitsi valkoiset?


    • Kundepuu

      väreillä hiukan vaikeempaa, mutta lisäämällä apusarakkeen ja siihen koodaamalla värikoodit ja arvojen perusteella voi sitten suodattaa(-4142 on ei täyttöä ja värit sitten positiivisiä) , eli nyt lisäsin CEA sarakkeen suodatusalueeseen ja sitä hyödynsin... ;-)
      muuta tarvittaessa sarake koodiin
      sarake CAE on Field:=2159


      Private Sub ToggleButton1_Click()
      Dim Sarake As Long
      Dim i As Long

      On Error Resume Next
      If ToggleButton1.Value = True Then
      Range("CEA:CEA") = ""
      Sarake = Application.WorksheetFunction.Match(CDbl(Date), Range("1:1"))
      For i = 9 To 95
      Range("CEA" & i) = Cells(i, Sarake).Interior.ColorIndex

      Next
      ActiveSheet.Range("$A$8:$CEA$95").AutoFilter Field:=2159, Criteria1:=">0"

      Else

      ActiveSheet.Shapes.Range(Array("ToggleButton1")).Select
      ActiveSheet.Range("$A$8:$CEA$95").AutoFilter Field:=Sarake
      End If
      End Sub

      Keep EXCEling
      @Kunde

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Petteri Orpo on satusetä

      Väittää että työllisyys on Suomessa samalla tasolla kuin hallituksen aloittaessa kesällä 2023. Fakta on, että työllisi
      Maailman menoa
      111
      3685
    2. Orpo ja Purra, käykää hakemassa oppia Espanjasta

      Espanja on näyttänyt kuinka kova työttömyys nujerretaan ja saadaan maan talous palautettua nousu-uralle. Ei ole häpeä kä
      Maailman menoa
      64
      2619
    3. Porvarimedia: Räsänen vei Lindtmanilta pääministerin paikan

      Lisäksi suomalaiset ovat innostuneet tuhlaaman, koska kuluttavat inflaation verran enemmän rahaa. Eikö porvarimedialla
      Maailman menoa
      29
      2563
    4. Jääkiekon MM:t pitää siirtää MTV:ltä Ylelle

      Persuille ikäviä uutisia taas. . Valtioneuvoston asetuksen mukaan MM-kisat kuuluvat kansallisesti merkittäviin tapahtumi
      Maailman menoa
      74
      2382
    5. Ruotsi laskee jälleen bensaveroa, Riikka irvailee tumput suorana

      Euron bensa oli persujen vaalilupaus, mutta kohta alkaa olla kolmosella alkavia litrahintoja. Meanwhile in Sverige: "
      Maailman menoa
      23
      2258
    6. Olitkin liian hyvää ollaksesi totta nainen

      Ihastuin ja rakastuin, mutta se on minun ongelma. Ei sinun.
      Ikävä
      103
      1340
    7. Kaste pelastaa ihmisen

      Kristittyjen kirkkojen toimittama yksi Kaste on Jumalan tekemä pelastusteko, jossa perisyntiin hengellisesti kuollut ihm
      Kaste
      616
      1232
    8. Uskon todistus

      Oikean uskovaisen ja nimikristityn erottaa siitä, että Jeesukseen uskova korottaa Jeesusta ja uskoa Häneen, mutta nimik
      Kaste
      261
      1036
    9. Ensin oli armo - sen jälkeen tuli usko

      Me emme ansaitse armoa omalla uskollamme. Armo on ansaitsematonta rakkautta mikä synnyttää meidät uudesti Jumalasta. K
      Luterilaisuus
      400
      1035
    10. Elisalla ja MTV:llä lihava riita - MTV:n kanavienlähetykset ovat katkeamassa Elisan asiakkailla

      Kaikkien MTV:n kanavien televisiolähetykset ovat katkeamassa Elisan kaapeli-tv-asiakkailta. https://www.is.fi/digitoday
      Maailman menoa
      142
      1019
    Aihe