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
Autofilter Field kohtaan kaava
6
235
Vastaukset
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
- 983413
- 623107
Kuoleman pelko katosi
Olen pelännyt koko elämän ajan kuolemaa mutta yhtäkkiä kun hindut paljastivat totuuksia uskonnoista noin aloin yhtäkkiä4342614- 802403
- 802343
- 962076
Toiselle puolikkaalleni
Sinulla ei taida olla kaikki nyt ihan hyvin? Minua itketti eilen kauheasti, sinunko itkuja itkin? Kyllä kaikki selviää j402056Kuhmolainen on selvästi kepun lehti
Kuhmolaise etukannessa oli Kuva kun Jaskalle annettiin karhu patsas.mutta kukmolaislehti oli niin kepulainen että Jaskan211679- 121676
Ei mun tunteet
ole mihinkään kadonnut. Enkä mä sua inhoa tai ole kyllästynyt. Mä ymmärsin, ettet ole kiinnostunut minusta, ainakaan sil401634