ik heb een tabel (in het origineel in blad verwerking) en bijkomende data (in blad verwerkingsinfo waar ook nog andere parameters staan voor de verwerking maar niet opgenomen in bijlage wegens te groot) die gefilterd moet worden op meerdere items om zo twee verschillende bestanden aan te maken: 1 met 2 voorkomende items en eentje met al de rest. het filteren van de twee items is geen problem, daarvoor gebruik ik deze
. De andere filtering is moeilijker, daar heb ik meerdere items (zie bijlage). Volgens wat ik gevonden heb zou je een range in een array moeten steken die als string gedefinieerd wordt en de gegevens transponeren. Ik heb dat geprobeerd maar ik krijg enkel een filtering op het item "N1213" dat effectief als tekst wordt aanzien, de andere ziet hij nog als cijfers zelfs als ik die als tekst formatteer.
dit gebruik ik nu :
waarbij sorteerrij de laatste rij is waarin een gegeven voorkomt (in voorbeeld in bijlage is dat 12), criterium is als variant gedefineerd en critrange als string.
de filtering zou dan hier moeten gebeuren :
.
In het origineel filter ik dus op veld nr 18 (komt niet voor in bijlage). Het is er mij om te doen hoe ik die array moet maken zodat ik die in de filter kan gebruiken.
Ik heb die via "macro opnemen" geprobeerd en dan is dit het resultaat (via het afvinken in de filter van de parameters die ik niet nodig heb)
en dat is wat ik via vba zou moeten krijgen
Stephaan
Code:
criterium = Array("=1204", "=1210")
dit gebruik ik nu :
Code:
criterium = Worksheets("verwerkingsinfo").Range("a1:a" & sorteerrij).Value
critrange = Split(Join(Application.WorksheetFunction.Transpose(criterium), "#"), "#")
de filtering zou dan hier moeten gebeuren :
Code:
ThisWorkbook.Worksheets("verwerking").ListObjects("Tabel1").Range.AutoFilter Field:=18, Criteria1:= criterium, Operator:=xlFilterValues
In het origineel filter ik dus op veld nr 18 (komt niet voor in bijlage). Het is er mij om te doen hoe ik die array moet maken zodat ik die in de filter kan gebruiken.
Ik heb die via "macro opnemen" geprobeerd en dan is dit het resultaat (via het afvinken in de filter van de parameters die ik niet nodig heb)
Code:
ActiveSheet.ListObjects("Tabel1").Range.AutoFilter Field:=18, Criteria1 _
:=Array("1208", "1209", "1213", "1217", "1238", "1239", "1249", "1250", "1255", "N1213" _
, "="), Operator:=xlFilterValues
Stephaan