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

Kopieren naar andere werkmap zonder Select, Activate e.d. te gebruiken

Status
Niet open voor verdere reacties.

Gerald Baalhuis

Gebruiker
Lid geworden
14 jan 2006
Berichten
369
Beste Forumleden,

Bijgaand twee Excel bestanden, het "moederbestand" en het "CVP" bestand.
Vanuit het moederbestand worden per rij (in het echte bestand zo'n 1000 rijen) zo'n 40 cellen gekopieerd naar het CVP bestand.
Per rij wordt in het CVP bestand een nieuw werkblad aangemaakt en naar deze kopie worden de cellen gekopieerd (naar een benoemd bereik).
Nu lees ik op diverse fora dat je omwille van de snelheid het gebruik van "Select", "Selection", "Activate" e.d. het beste kan vermijden.
Helaas staat de macro die ik gemaakt heb hier vol mee. :(
Zouden jullie hier jullie verhelderende licht eens over kunnen laten schijnen?

Om je een idee te geven: het genereren van de 1000 CVP's duurt nu zo'n 45 minuten (met Screenupdating op False en Recalculation op Manual).
Ik denk dat 't een stuk sneller kan, heb alleen even een voorbeeldje nodig hoe ik per rij/cel zonder de bovengenoemde commando's Select enz. dit voor elkaar kan krijgen.

Mijn dank is bij voorbaat weer "forumidabel" groot!

Met vriendelijke groet,

Gerald Baalhuis
 

Bijlagen

Laatst bewerkt:
Plaats svp geen bestanden met beveiliging, het is hier tenslotte een forum.
 
Gerald, Je probleem met je procedure is dat je élke kopieerhandeling afzonderlijk uitvoert. Dus elke cel maak je een kopie van, activeert het CVP workbook, gaat daar plakken, actieveert weer het moederbestand enzovoorts. DAT is inderdaad tijdvretend. Zorg er voor dat je zo'n bereik eenvoudiger kan oppakken en in 1x overbrengen naar zo'n nieuwe sheet. Maak je trouwens 1000 workbooks aan of zelfs 1000 sheets in 1 workbook? Beide lijken me niet wenselijk, maar het ligt er natuurlijk aan wat je uiteindelijke doel is met die gegevens. Als het alleen maar gaat om afdrukken, kan het nog veel eenvoudiger denk ik.
 
Snb, sorry, ik was ff vergeten dat het wachtwoord er nog opzat. Als het goed is is het er nu af.

Ginger, het is inderdaad een kopieerslag, en er worden werkbladen aangemaakt in het CVP bestand. Deze worden vervolgens afgedrukt. Als jij een methode weet die sneller gaat, graag!!!
Ik kan het moederbestand niet zomaar wijzigen, de kolomvolgorde moet eigenlijk blijven zoals hij nu is.

Fijne avond en voor zover beiden bedankt voor jullie input.

Gerald
 
Ik heb héél even een poging gedaan om iets voor je voor te bereiden, maar had zoiets van "dat moet je zelf maar doen". ;)
Ik zie namelijk dat je in de CVP sheet volledig werkt met Celnamen en daar in je formulier via formules naar verwijst. Prima systeem opzich... Dus niets mis mee. Maar MAAK het je zelf dan makkelijk. Kopieer zo'n hele regel uit je moederbestand. Plak die - eventueel getransponeerd - ergens naast je CVP formulier (zoiets als je nu ook al doet in de kolommen G en Q). Hevel nu je Celnamen over naar de juiste cellen in die geplakte regel. Je bestand staat dan klaar om eenvoudig ingezet te worden ipv dat je nu héél moeilijk via je code cel voor cel uit je moederbestand opzoek gaat naar je naamcel in het CVP bestand.

Je hoeft nu alleen nog maar een paar regels code te schrijven die uit je moederbestand regel voor regel kopieert naar je CVP bestand...
En als je het dan echt mooi maakt, zet je alle gegevens van de sheet Alle Opdrachten in een array en laat je van daaruit plakken in je CVP bestand.

Nu even een uurtje werk om het naar bovenstaand idee om te zetten en daarna uuuuuuuuuuren tijdwinst met het genereren van je CVP bestanden... :D
 
Gerald,

Maak van alle samengevoegde cellen in bestand CVP gewone cellen.

Doe jezelf een lol en maak een lijst met in kolom A

de beschrijving van iedere kolom uit het moederbestand A16:...16

en in kolom B

het adres van de cel in het CVP bestand waarin het gegeven uit kolom A moet worden weggeschreven.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan