• 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.

Cellen kopieren als <= ...

Status
Niet open voor verdere reacties.

Steej

Gebruiker
Lid geworden
14 apr 2009
Berichten
13
Hallo,

Ik heb een berg van 72.000 meetwaarden per dag, waarvan ik wil dat deze (het liefst in een macro) alleen gekopieerd worden in een tabel in dezelfde sheet (of eventueel een andere) als ze kleiner zijn of gelijk aan 8,1. Is dat mogelijk?
Het is me wel gelukt om met een formule (=IF(B1<=8,1;B1)) de waarden te kopieren, maar nu krijg ik bij de waarden die niet voldoen ´FALSE´, terwijl deze dus eigenlijk helemaal niet gekopieerd moeten worden. Bestaat er zoiets als 'COPY IF' of 'DELETE IF'? Hoe kan ik dit het beste aanpakken?

Alvast bedankt!
 
Ik denk niet dat het voldoende is, maar eerst maar eens simpel proberen;)
Formule:

(=IF(B1<=8,1;B1;""))
 
Super! Maar nu krijg ik lege cellen tussen de juiste meetwaarden, is er een manier waarop ik die in één keer weg kan krijgen?
 
kan je niet je originele data sorteren? Dan kan je gewoon de bovenste X selecteren & kopieren.
 
In bijgaand bestand staat een voorbeeld van wat je wilt, als ik het goed interpreteer. Tis niet de makkelijkste formule, maar je moet er wel uit kunnen komen (hoop ik!)
Anders hoor ik 't wel weer...

Michel
 

Bijlagen

Misschien kan dat ook wel... maar hoe doe ik dat als er alleen getallen in de cellen staan?
 
Kijk eens onder Data --> Filter --> Uitgebreid Filter (AdvancedFilter), dat zou het truukje voor je uit moeten kunnen voeren.

Als er nog vragen zijn horen we het wel,
 
@OctaFish
Matrixformules zijn mooi ze vergen echter nog al wat rekenkracht en ik denk dat 72000 regels dan een ietwat te grootte hoeveelheid daarvoor is.
Hier een voorbeeld met de 'small' of in het ned. 'kleinste'
 

Bijlagen

Popipipo: ik ben heel benieuwd, maar ik kan je bestand niet lezen :confused:
Zou je 'm aub als .xls kunnen plaatsen?

Dank, Marcel
 
Hallo Marcel
Het bestand is een excel 2007 bestand.
Ik nam aan dat jij dat ook had.
Want je spreekt nl over 72000 meetwaarden als je die onder elkaar zet kun je alleen versie 2007 gebruiken

Eerder versies hebben nl. maar 65536 rijen en daar kun je dus geen 72000 gegevens onder elkaar kwijt.
Hierbij toch even een voorbeeld voor eerdere versies.
Je moet zelf de formules nog even door kopieren.
 
Laatst bewerkt:
Hallo Marcel
Toch nog even een aanpassing de file van vanmiddag klopte niet
Hier een verbeterde versie.
 

Bijlagen

Ha Pipo,

ik was niet de originele vragensteller, het zou dus goed kunnen dat die wél Excel2007 gebruikt, maar ik was gewoon heel benieuwd naar je oplossing ;-)
Dus heel veel dank voor het posten van een .xls-file!
 
Kijk eens onder Data --> Filter --> Uitgebreid Filter (AdvancedFilter), dat zou het truukje voor je uit moeten kunnen voeren.

Als er nog vragen zijn horen we het wel,
Zo zou ik het ook doen.
Gebruik maken van de origineele dingen die excel heeft.
 
Kopiëren naar kolom K van hetzelfde werkblad
Code:
Sub tst()
  With Sheets(1).Cells(1, 1).CurrentRegion
    .AutoFilter 1, "<=8.1"
    .Offset(1).SpecialCells(xlCellTypeVisible).Copy [K1]
    .AutoFilter
  End With
End Sub
of kopiëren naar een ander werkblad:
Code:
Sub tst2()
  With Sheets(1).Cells(1, 1).CurrentRegion
    .AutoFilter 1, "<=8.1"
    .Offset(1).SpecialCells(xlCellTypeVisible).Copy sheets(2).[A1]
    .AutoFilter
  End With
End Sub
 
Laatst bewerkt:
Gemiddelden van verschillende aantallen metingen

Bedankt allemaal voor jullie goede tips, het is me gelukt!

Nou heb ik nog wel een andere vraag:
Ik heb een aantal tijdstippen waar ik graag het gemiddelde van wil weten. Ik wil echter alleen het gemiddelde van tijden die heel dicht bij elkaar liggen (binnen 10 seconden). Het probleem is alleen dat ik steeds andere aantallen tijdstippen heb.
Bijvoorbeeld:
23:42:04
23:42:04
23:42:04
23:42:04
23:42:04
23:42:04
23:50:07
23:50:07
23:50:07
23:50:08

Hier zouden de tijden 23:42:04 (de eerste 6 waarden) en 23:50:07 (de laatste 4) uit moeten komen. Is dit mogelijk?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan