Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[excel2007]Formule gebruiken in filter array

Pagina: 1
Acties:

  • Paultje3181
  • Registratie: November 2002
  • Laatst online: 23:20
Ik heb in een macro een filter array staan. Nu wil ik eigenlijk dat ik in de macro filter op (weeknummer - 1)
Visual Basic:
1
2
    ActiveSheet.Range("$A$1:$M$" & LastRow1 & "").AutoFilter Field:=4, Criteria1:="<54", _
        Operator:=xlAnd

Criteria1 moet dus iets worden als
Visual Basic:
1
Criteria1:="=WEEKNUM(TODAY())-1"


Helaas werkt dit niet. Kan dit überhaupt wel? En zo ja, hoe zou ik het dan moeten noteren? Google levert mij alleen maar op hoe ik de filter maak helaas.

  • Paultje3181
  • Registratie: November 2002
  • Laatst online: 23:20
Ik heb het via een omweg opgelost:
Visual Basic:
1
2
3
4
5
6
7
    Dim LastRow1 As Long
    With ActiveSheet
        LastRow1 = .Cells(.Rows.Count, "A").End(xlUp).Row
    End With
    Range("A" & LastRow1 + 1 & "").Formula = "=WeekNum(TODAY()) - 1"
    ActiveSheet.Range("$A$1:$M$" & LastRow1 & "").AutoFilter Field:=4, Criteria1:=Range("A" & LastRow1 + 1 & ""), _
        Operator:=xlAnd

Blijft alleen de vraag over of het überhaupt mogelijk is om de formule er rechtstreeks in te zetten.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

je bent wel héél lastig te volgen. Met array filter bedoel je het standaard autofilter?
Anyway, het standaard autofilters laat inderdaad geen formules toe. Maar als je toch in VBA het numerieke filter zet:

Visual Basic:
1
criteria1:=DatePart("ww", Date)-1

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Paultje3181
  • Registratie: November 2002
  • Laatst online: 23:20
Dankje... Sorry dat ik het niet beter uit kon leggen