Aantal tabbladen kopiëren aan de unieke waarde in kolom

Status
Niet open voor verdere reacties.

monty1a

Gebruiker
Lid geworden
29 dec 2006
Berichten
202
Goedendag allemaal,

Weer een vervolg vraag van mij.

Ik heb een lijst met waarde, nu wil ik dat er van elke unieke waarde in kolom C7:C (kousnummer) het tabblad K word gekopieerd en deze unieke naam krijgt.


Alvast bedankt voor jullie reactie.
 

Bijlagen

  • Voorbeeld overzicht.xlsm
    137 KB · Weergaven: 21
Plak deze code op de VBA pagina van Overzicht :

Code:
Sub tabs_maken()
Dim laatste As Integer
Dim i, c As Integer
i = 7
c = 1
ActiveSheet.Cells(7, 3).End(xlDown).Select
laatste = ActiveCell.Row

Do While i < laatste + 1
    c = Sheets("Overzicht").Cells(i, 3).Value
    newsh = "K" & Trim(c)
    If WorksheetExists(newsh) Then
Else
    Sheets("K").Copy After:=Sheets(Sheets.Count)
    ActiveSheet.Name = newsh
End If
i = i + 1
Loop

End Sub


Function WorksheetExists(ByVal WorksheetName As String) As Boolean
Dim Sht As Worksheet

    For Each Sht In ThisWorkbook.Worksheets
        If Application.Proper(Sht.Name) = Application.Proper(WorksheetName) Then
            WorksheetExists = True
            Exit Function
        End If
    Next Sht

WorksheetExists = False

End Function

En belangrijk !!!
Wijzig de tabnaam van " Overzicht" in "Overzicht" - nu staat er een spatie teveel.
Je maakt best een knop aan om de code te starten.
 
Laatst bewerkt:
Waarom is rij 6 leeg? Waarom staan er getallen in C314 en C315? De spatie in de bladnaam is ook niet handig. Dus zonder.

Code:
Sub VenA()
  With Sheets("Overzicht")
    .Range("C5:C206").AdvancedFilter xlFilterCopy, , .Range("AZ1"), True
    ar = .Range("AZ1").CurrentRegion
    .Columns(52).Clear
  End With
  
  For j = 3 To UBound(ar)
    If IsError(Evaluate("'" & ar(j, 1) & "'!A1")) Then
      Sheets("K").Copy , Sheets(Sheets.Count)
      ActiveSheet.Name = ar(j, 1)
    End If
  Next j
End Sub
 
Goedendag allemaal,

Weer een vervolg vraag van mij.
Hieruit opmakende dat je vorige vragen allemaal zijn opgelost, want jij bent bijna nooit de laatste in de reacties van al je vragen.
 
Hieruit opmakende dat je vorige vragen allemaal zijn opgelost, want jij bent bijna nooit de laatste in de reacties van al je vragen.

Sorry hiervoor. Ik ben jullie elke keer weer zeer dankbaar, en als ik geen dank heb gezegd is me dat echt ontschoten.
Ik was in de veronderstelling dat als ik klaar was een slotje en dank erbij had neergezet.

Wat betreft me vorige vraag, wil ik even op de zaak testen voordat ik hem sluit.

Dus bij deze, voor al me vorgie vragen dank hiervoor.
 
Waarom is rij 6 leeg? Waarom staan er getallen in C314 en C315? De spatie in de bladnaam is ook niet handig. Dus zonder.

Dit zijn denk ik nog overblijfsels van oude ontwerpen.
Rij 6 was ooit een filter.
C134 en C315 werd ooit gebruikt om de rij en kolom te kleuren die geselecteerd was.

Ik ga de code even proberen.
Alvast bedankt voor de voorzet.
 
Plak deze code op de VBA pagina van Overzicht :

En belangrijk !!
Wijzig de tabnaam van " Overzicht" in "Overzicht" - nu staat er een spatie teveel.
Je maakt best een knop aan om de code te starten.

Die spatie is er ooit met opzet gezet, omdat als je de naam van het tabblad wijzigt naar Overzicht dan krijg je de foutmelding: "De naam revisieoverzicht is gereserveerd" en ik weet niet hoe je dat moet opheffen.

Ik ga de code in ieder geval proberen.

Alvast dank hiervoor.
 
Whow,
Jullie codes werken allebei perfect.

Nog 1 kleine aanvulling?
is het mogelijk dat er gelijk in cel B1 de kousnummer komt te staan,

En misschien nog brutaler, zouden de ID nummers ook al ingevuld kunnen worden?

Maar vooralsnog hebben jullie met deze code al een hoop werk bespaard voor ons.


Thanx
 
Misschien eerst alles van ooit er maar eens uithalen? Maak van het gegevensbereik een tabel. De tabnaam 'Overzicht' is een bug in XL-2007. Waarom wil je alles opsplitsen in losse tabjes? En waarom dan alleen het ID meenemen? Dan ga je met formules de rest er weer bijzoeken? Je kan ook eens de zoekfunctie op dit forum gebruiken, er is voldoende te vinden geavanceerd of gewoon filteren om data in verschillende tabjes te zetten.
 
Misschien eerst alles van ooit er maar eens uithalen? Maak van het gegevensbereik een tabel. De tabnaam 'Overzicht' is een bug in XL-2007. Waarom wil je alles opsplitsen in losse tabjes? En waarom dan alleen het ID meenemen? Dan ga je met formules de rest er weer bijzoeken? Je kan ook eens de zoekfunctie op dit forum gebruiken, er is voldoende te vinden geavanceerd of gewoon filteren om data in verschillende tabjes te zetten.

Mee eens, dit is ook mijn bedoeling. Er hebben in de tussentijd al zoveel mensen dingen verwijderd, toegevoegd en veranderd dat het zwaarder is dan nodig.
Hoe kan ik de bug omzeilen?
Tuurlijk wil ik het liefst dat hij alles tegelijk invult, maar durfde eigenlijk niet teveel te vragen.

Ik ga ook zeker het forum nog doorzoeken.
Ik wil losse tabjes, omdat er later per"kous" specifieke informatie in verwerkt wordt en deze ook als "uniek" bestand moet worden gezien en opgeslagen.
 
Hoe kan ik de bug omzeilen?
Lijkt mij een open deur. Een overzicht impliceert dat er een jawel een overzicht staat terwijl er een verzameling van gegevens staat. De naam gegevens of database lijkt mij dan logischer.

Alles in 1.
 

Bijlagen

  • Voorbeeld overzicht (1).xlsm
    139,6 KB · Weergaven: 19
Laatst bewerkt:
Die naam is idd een goeie tip, dat ga ik ook wel veranderen.

Dank voor de code ik ga hier mee verder.

Thanx
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan