• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Filtering automatiseren

Status
Niet open voor verdere reacties.

Woffels

Gebruiker
Lid geworden
8 jan 2006
Berichten
249
Hallo,
Ik haal periodiek waarden binnen van een temperatuur sensor. Het is een csv bestand dat online staat. Dit doe ik met een query en die gegevens komen netjes in een blad te staat (blad a) . Elke regel in die csv zijn 30 seconde waarden en omdat ik het gemiddelde van 10 minuten wil, heb ik een tweede blad gemaakt (blad b) met op elke regel het gemiddelde van elke 10 minuten.
Dat gaat prima.
Helaas genereert de sensor af en toe rare hoge waarden die het 10 minuut gemiddelde beïnvloed. Door nu een filter toe te passen op de kolom met de 10 min gemiddelden in blad b kan ik die uitschieters er prima uitfilteren. Alles groter dan 40 graden filter ik weg. Werkt ook prima. Maar als ik na, bijvoorbeeld een dag, nieuwe data wil ophalen met gegevens->Alles vernieuwen, dan worden de nieuwe gemiddelden in blad b niet opnieuw gefilterd met de nieuwe gegevens. Dit moet ik handmatig doen door de kolom filter eerst "alles selecteren" te checken en daarna het filter kleiner dan 40 weer te activeren. Kan dat niet automatisch?
Kort gezegd wil ik dat het filter ook nieuwe waarden gaat filteren als die er automatisch bijkomen.
 
Dat kan met een macro. Daarvoor zul je je bestand even moeten plaatsen. Dan krijg je een nauwkeurig antwoord
 
Hallo,
Ik heb het bestand moeten strippen, het was wel erg groot.

Hier de link naar de bestanden
https://we.tl/t-Do4xkgjRo4

Het gaat om de temp file en het bronbestand(csv) waar ik de data uit haal met een query.
 
k denk dat je hier al genoeg aan hebt. 1 druk op de knop nodig (voordat je de macro uitvoert moet je er wel voor zorgen dat de filter ingeschakeld is op kolom C)


Code:
Sub j()
With Sheets(1).ListObjects("Tabel2").Range
    .AutoFilter
     Sheets(2).ListObjects("Bron").Refresh
    .AutoFilter 1, "<40"
End With
End Sub
 
Laatst bewerkt:
Plaats het bestand gewoon op dit forum ipv via een onduidelijke link. Het bestand blijft bewaard in deze vraag en ik hoef niet op iets onbekends te klikken.
 
Het bestand is 15 mb. TS dient het eerst te verkleinen
 
15 mb heeft dan ook niets met een voorbeeld bestand te maken.
 
Het is een hele grote tabel met heel veel formules er in, vandaar.
Maar de oplossing van JVeer werkt prima.

Bedankt.
 
Mooizo:thumb:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan