data werkblad 1 uitsorteren over 13 werkbladen (zelfde bestand)

Status
Niet open voor verdere reacties.

Robert Smidt

Gebruiker
Lid geworden
26 mei 2009
Berichten
901
Hallo beste mensen,

Na me suf te hebben gezocht stel ik toch maar de vraag.

Ik werk met een excelbestand waar 8 kolommen variabel (aantal rijen fluctueert) zijn gevuld (werkblad 1). In kolom G (werkblad 1) staan de getallen 901 t/m 913 willekeurig doorelkaar. Nu heb ik 13 werkbladen aangemaakt onder de noemer 901 t/m 913 van waaruit ik de data uit de bronmap (werkblad1) wil uitsorteren. Het is de bedoeling dat deze de hele regel mee kopieert.

Een antwoord zie ik met belangstelling tegemoet.
 
Test deze eens Robert.

Sub tst()
Code:
Dim cl As Variant
 With Sheets("Blad1")
    For Each cl In .Range("G1:G" & Cells(Rows.Count, 7).End(xlUp).Row)
      If cl > 0 Then
    On Error Resume Next 'als het blad niet bestaat.
        Sheets(cl.Text).[A65536].End(xlUp).Offset(1).EntireRow.Value = .Cells(cl.Row, 1).EntireRow.Value
      End If
    Next
  End With
End Sub
 
Klasse werkt bijna helemaal goed

Harry bedankt,

de code werkt super, het enige probleem is wanneer ik blad 1 leeg maak - omdat het een sjabloon betreft dat voortdurend opnieuw gevuld wordt - dan laat hij de data in de overige werkbladen staan. Nu kan ik wel een macro bedenken dat alle werkbladen weer delete, echter vind ik dat minder mooi, is hier een oplossing voor?
 
Ik vrees dat je toch je macro zal moeten bedenken.
 
Je kunt de gegevens sorteren op een apart blad (op kolom G), en dan de gegevens per group naar een blad overzetten.

op die manier hoef je maar een keer per blad de gegevens over te zetten, en kun je dus voordat je de gegevens kopieert het gehele blad leegmaken.

Kijk maar eens in het voorbeeldje naar mijn benadering.
Voer de macro "Main" uit. (hoe slecht ben ik in namen bedenken :p)

Bekijk bijlage SplitData.xls
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan