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

Bepaalde tabbladen kopieren

Status
Niet open voor verdere reacties.

Abel Visscher

Gebruiker
Lid geworden
28 mei 2007
Berichten
171
Hallo iedereen,

Ik heb een overzicht gemaakt m.b.t. het bijhouden van o.a snipperuren.
Dit alles werkt naar behoren. Nu wil ik graag aan het einde van het jaar b.v. 31 dec de tabbladen van de werknemers automatisch laten kopieren naar een nieuw leeg tabblad d.w.z. geen waarden in de cellen behalve het restand aan uren (+/-) in de begincel. Dit alles gaat mij wel lukken, maar het kopieren lukt mij niet. Ik weet niet precies hoe te beginnen. De tabblad naam is opgebouwd uit het samenvoegen van 3 cellen nl. Voornaam, Achternaam en Jaartal. Laten we zeggen: "Abel Visscher 2008" het kopie zou dan moeten zijn: "Abel Visscher 2009". Zo zijn er uiteraard meerdere werknemers. Verder zijn er nog een paar tabbladen die niet gekopieerd moeten worden.
Ik kan proberen een bestandje bij te voegen, al moet ik die wel eerst uitkleden omdat die te groot is (5mb). Wie kan mij een duwtje in de rug geven om te starten?

Groet,
Abel Visscher
 
Hier is al bijna de hele code:

Code:
Sub tabbladenKopieren()

    Dim ws As Worksheet
    Dim wsNieuwBlad As Worksheet
    
    'lus doorheen tabbladen
    For Each ws In ThisWorkbook.Worksheets
    
        'neem enkel bladen met 2008 in de naam
        If InStr(ws.Name, "2008") > 0 Then
            
            'voeg nieuw blad toe
            Set wsNieuwBlad = Worksheets.Add(after:=Sheets(Worksheets.Count))
            
            'verander de naam van toegevoegde blad
            wsNieuwBlad.Name = Replace(ws.Name, "2008", "2009")
            
            'kopieer gegevens
            
            'mag je zelf nog doen ;-)
            
        End If
    
    Next ws

End Sub

Wigi
 
Wigi,

Alvast bedankt voor je snelle reactie.:thumb:
Ik ga er mee aan de slag, al komt er bij mij nu wel een nieuwe vraag naar boven bij het zien van uw code. Is het ook mogelijk om het zo te maken dat ie het het jaar daarop ook doet? Dus van 2009 naar 2010?:o (Variabel dus?)
Ik ga er in elk geval mee aan de gang.:D

Groet,
Abel Visscher
 
Code:
Sub tabbladenKopieren()

    Dim ws As Worksheet
    Dim wsNieuwBlad As Worksheet
    
    'lus doorheen tabbladen
    For Each ws In ThisWorkbook.Worksheets
    
[B]        'neem enkel bladen met het huidige jaar in de naam
        If InStr(ws.Name, Year(date)) > 0 Then[/B]
            
            'voeg nieuw blad toe
            Set wsNieuwBlad = Worksheets.Add(after:=Sheets(Worksheets.Count))
            
            'verander de naam van toegevoegde blad
            wsNieuwBlad.Name = Replace(ws.Name, [B]Year(date), Year(date) + 1[/B])
            
            'kopieer gegevens
            
            'mag je zelf nog doen ;-)
            
        End If
    
    Next ws

End Sub

Wigi
 
Wigi,

Nogmaals bedankt.:D
U hoort nog van mij of alles gelukt is.

Groet,
Abel Visscher
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan