Oikeastaan sinun tarvitsee vain saada lista suodatettavista nimistä power queryyn ja käyttää sitä listaa filtterinä manuaalisen filtterin sijaan.
Eli ensin lista:
Tee vaikka toiselle välilehdelle taulukko jonka otsikko on Nimet, sen alla poistettavat nimet ja nimeä se taulukko vaikka PoistettavatNimet.
Tee tälle taulukolle uusi kysely eli Data -> From Table/Range -> Transform data. Tämä avaa taas power query -editorin. Mene transform-välilehdelle ja paina Convert to list. Tämä tekee taulukon datasta listan jota voidaan käyttää M-koodissa. Tämä lista pitäisi olla näkyvissä vasemmalla queries-paneelissa:
Nyt kun meillä on lista nimistä, käytetään sitä M-koodissa klikkailtujen filtterien sijaan. Mene alkuperäiseen kyselyyn ja muokkaa sitä steppiä jossa suodatus tapahtuu. Jos sinulla ei ole kaavariviä näkyvissä, paina View -> Formula bar päälle. Siellä todennäköisesti lukee jotain allaolevan kaltaista:
Koodi:
= Table.SelectRows(#"Removed Columns", each ([Nimi] <> "Nimi 1" and [Nimi] <> "Nimi 11" and [Nimi] <> "Nimi 15" and [Nimi] <> "Nimi 17" and [Nimi] <> "Nimi 23"))
Tuo siis tutkii edellisen stepin tulosta (#"Removed Columns") rivi riviltä onko jollain rivillä jokin noista nimistä ja poistaa ne rivit. Käytetään tämän kaavan sijaan itse kirjoitettua kaavaa jossa käytetään aiemmin luotua listaa sen sijaan että lueteltaisiin kaikki erikseen:
Koodi:
= Table.SelectRows(#"Removed Columns", each List.Contains(PoistettavatNimet,[Nimi])=false)
Tuo siis tutkii joka rivillä löytyykö nimi listasta ja jos löytyy, poistaa sen. Jos tuo =false olisi =true listalta löytyvä nimi säilytettäisiin ja muut poistettaisiin.
Nyt aina kun lisäät nimiä tuolle toisella välilehdellä olevalle listallle, päivittyy myös tuo filtteri automaattisesti ja samalla tietenkin lopullinen kyselyn tulos.