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

kopiëren van een bepaalde range als aan voorwaarde word voldaan

Status
Niet open voor verdere reacties.

Dijkie72

Gebruiker
Lid geworden
19 jun 2014
Berichten
11
Hallo.

Ik ben bezig een importfile te maken voor het budget van 2015.

In de file heb ik de gegevens van diverse afdelingen in diverse tabbladen staan.

Nu wil ik op een makkelijke manier van alle sheets , waar de waarde van kolom G (Year Amount) niet 0 is en niet leeg is, de waardes in de kolommen a b c d e f en g kopiëren naar het blad Budget , beginnende op C3.

Alvast bedankt voor de hulp.
 

Bijlagen

Test het maar eens.
Code:
Sub hsv()
Dim sh As Worksheet
For Each sh In Worksheets
If Not sh.Name = "Budget" Then
   With sh.Cells(7, 1).CurrentRegion
     .AutoFilter 7, ">0"
     sh.AutoFilter.Range.Offset(1).SpecialCells(12).Copy Sheets("Budget").Cells(Rows.Count, 3).End(xlUp).Offset(1)
     .AutoFilter
   End With
  End If
 Next sh
End Sub
 
Laatst bewerkt:
Bedankt HSV,

Dit is wat ik zocht. Het pakte alleen de bedragen >0. Dit heb ik veranderd in <>0 , alleen krijg ik nu wel de regels erbij met lege cellen.

Hoe kan ik er voor zorgen dat deze ook niet mee worden genomen.
 
Kleine aanpassing.
Code:
 .AutoFilter 7, "<>", xlAnd, "<>0"
 
Bedankt,

Beide opties die ik heb gekregen werken.

HSV klopt het dat deze macro alleen werkt wanneer er waarden in de cellen staan.

Ik probeer het nu ook toe te passen op een file waarin in de tabbladen word verwezen naar andere files en dan krijg ik een foutmelding op de regel met .autofilter ?

Is er ook een mogelijkheid om dit op te lossen? Dan kan ik het ook gebruiken (met wat aanpassingen uiteraard) op andere files om gegevens te verzamelen.
 
Zet het bestand hier eens neer met de verwijzingen naar de andere bestanden.
 
Hallo HSV,

Dit is een deel van het bestand. In de tabbladen word hierbij verwezen naar tal van andere sheets (welke ook de bron zijn van de vorige bijlage ).
 

Bijlagen

Het was me niet opgevallen dat er formules met verwijzingen naar andere bestanden in stonden.
Helaas begrijp ik je vraag dan niet wat de bedoeling is, en op welke regel de foutmelding komt (.autofilter) ook niet.
 
Wanneer je de macro runt geeft hij en foutmelding.

Bij de regel .AutoFilter 7, "<>", xlAnd, "<>0" geeft hij dan een foutmelding in VBA
 
In tabblad "Controle uitvoer" staan geen gegevens.
Code:
Sub HSV()
Dim sh As Worksheet
For Each sh In Sheets
If Not sh.Name = "Salaris" Then
 On Error Resume Next
   With sh.Cells(7, 1).CurrentRegion
     .AutoFilter 7, "<>", xlAnd, "<>0"
     sh.AutoFilter.Range.Offset(1).SpecialCells(12).Copy Sheets("Salaris").Cells(Rows.Count, 3).End(xlUp).Offset(1)
     .AutoFilter
   End With
 On Error GoTo 0
  End If
 Next sh
End Sub
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan