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

MACRO - automatisch waarde kopieren naar tabblad

Status
Niet open voor verdere reacties.

Dappre

Gebruiker
Lid geworden
28 mei 2017
Berichten
102
Beste leden,

Wie heeft er een oplossing als ik een export maak van betaalgegevens waar deze gekoppeld zijn aan een afdeling om deze vervolgens in een nieuw tabblad te toe te voegen onder de naam van de afdeling met daarbij de gehele rij.

Alvast bedankt
 
Dappre,

TIP: als je een vraag stelt, plaats dan een Excelbijlage van wat je al hebt. Nu moeten evt. helpers eerst zelf gaan bedenken hoe in jouw situatie die er uit ziet en hoe het uiteindelijke resultaat er uit moet komen te zien.

Om te voorkomen dat er "gevoelige" info openbaar wordt zkun je die "gevoelige" info vervangen door "onzingegevens".
 
Hierbij een voorbeeldbestand.
Het is daarbij de bedoeling dat de waarde van kolom Q automatisch een apart tabblad krijg met naamsvermelding.
Ook de gehele rij met gegevens mag gekopierd worden.

Het kan overigens voorkomen dat een afdeling uit meerdere waarden van kolom Q kan voorkomen. Dus bijv. Overig kan bestaan uit IT en Finance.

Alvast bedankt


graag het hoofdbestand volledig compleet houden.

Alvast bedankt.Bekijk bijlage Macro.xlsx
 
Dappre, zie bijlage

Druk op de knop om te starten
 

Bijlagen

Bedankt Haije,

Dit is precies wat ik wil!
Echter wanneer ik tabbladen wijzig in bijv. andere namen dan krijg ik de volgende foutmelding:

Fout 424 'object vereist'

Case "Artwork"
Range([A2].Offset(x), [AJ].Offset(x)).Copy Sheets(wat).Range("A1000000").End(xlUp).Offset(1)

Ik heb de range wat uitgebreid omdat het bereik wat groter moet zijn. Is het verder een probleem dat de waarde die hij moet kopieren uit een verticaal zoeken formule komt?

Thnx
 
Waarom wil je dit? En de foutmelding lijkt mij logisch.
 
Omdat ik graag een uitbreiding wil maken met meerdere data en tabbladen.
 
Alles in één tabel laten staan werkt over het algemeen een stuk makkelijker. Met het autofilter, het geavanceerde filter of een draaitabel kan je dan vrij eenvoudig selecties maken. Waarom staan er geen kolomkoppen in het bestand en waarom staan er een aantal lege kolommen in?
 
Hi VenA,

Dit komt omdat het een export vol met data is vanuit een informatiesysteem. Vanuit deze opzet worden er lijsten gemaakt die weer gericht worden aan afdelingen.

Dus een uitbreiding is niet mogelijk op het zojuist gevraagde mogelijkheid?
 
Laatst bewerkt:
Als je zelf niets van VBA of Excel weet dan zal je zeer specifiek moeten uitleggen wat waar moet komen. Ook alle randvoorwaarden zal je moeten definiëren. De code van @Haije doet wat jij vraagt dus zal je moeten aanpassen of je moet met een veel beter voorbeeld komen.
 
Het enige wat ik graag zou willen is een uitbreiding van de code.
Dus meerdere afdelingen, die meerdere tabbladen aanroept.
 
Dan moet je die aangeven in je vraag, want zoals eerder gezegd: als jij niet aangeeft wat je wilt hebben moeten de helpers dat zelf bedenken en dan krijg je blijkbaar iets dat je niet wilt.
N.a.v. de opmerking van VenA over een tabel plus filter of draaitabel heb ik je oorspronkelijke voorbeeld van een draaitabel voorzien.

Voeg eens gegevens toe op de tab hoofdbestand en kijk dan eens op tab draaitabel
 

Bijlagen

Ik zal het proberen te verduidelijken:

In het voorbeeldbestand Macro_2 zie je in het hoofdbestand data die ik van een externe gegevensbron haal (witte cellen).
Vervolgens worden de gegevens binnen de gele cellen automatische berekend middels verticaal zoeken.
Deze gegevens (groepen in dit voorbeeld) dienen vervolgens te worden gealloceerd aan de betreffende tabbladen.Bekijk bijlage Macro_2.xlsx
 
De groepen 1 t/m 10 worden worden met de code in hun tabjes gezet wat je met rest wil weet ik niet. De kolomkop soort komt 2 keer voor en dan gaat het niet geheel goed. Waarom niet alle kolommen een kolomkop hebben zal ook wel een logica hebben?

Code:
Sub VenA()
For Each sh In Sheets
  If Left(sh.Name, 5) = "Groep" Then
    sh.Cells.ClearContents
    With Sheets("Hoofdbestand")
      .Cells(1, 35).Resize(2) = Application.Transpose(Array("Afdeling", sh.Name))
      .Cells(1).CurrentRegion.Resize(, 29).AdvancedFilter xlFilterCopy, .Range("AI1:AI2"), sh.[A1]
    End With
  End If
Next sh
End Sub
 
Bedankt VenA,

De functie werkt prima!
Waar ik alleen benieuwd naar ben is wat ik moet wijzigen aan de code als ik bijv. dezelfde code wil gebruiken voor een ander bestand waar de naamgeving net weer wat anders is.
De enige waarde die ik in de code kan vinden zijn 'Groep' en 'Afdeling'.

Bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan