aanmaken van bestanden via een macro

Status
Niet open voor verdere reacties.

Kristinho1978

Gebruiker
Lid geworden
2 jul 2015
Berichten
96
Ik heb 2 bestanden: bestand a (C:\a.xlsm) en bestand b (C:\b.xslx).
De inhoud van de bestanden is niet belangrijk; ga er desnoods van uit dat ze leeg zijn.

In bestand a wil ik graag een macro, die bestand b een aantal keer - zeg 3 keer - aanmaakt, met verschillende namen. Bijvoorbeeld 'aap', 'noot' en 'mies'.
Deze benamingen wil ik graag in de macro kunnen opgeven.

Dus zodra ik op de macroknop in bestand a druk, wordt bestand b drie keer aangemaakt onder de namen 'aap', 'noot' en 'mies'.
Ze worden opgeslagen als C:\aap.xlsx, C:\noot.xlsx en C:\mies.xlsx.

Wie kan me helpen de macro te schrijven?

(svp niet vragen waarom ik het wil / svp niet vertellen op welke manieren het zonder macro kan --- ik wil het graag en ik wil het graag met een macro :))
 
Da's geen probleem maar kies eerst een andere locatie omdat de kans groot is dat je in C:\ geen bestanden mag aanmaken.
 
Jij mag een willekeurige andere schijf kiezen.

Ik zou het fijn vinden om concrete antwoorden te ontvangen.
 
En die krijg je :)
Als niemand me voor is kan ik straks thuis een voorbeeld voor je maken.
 
Laten we er vanuit gaan dat TS schrijfrechten op zijn eigen pc heeft :). Wel graag antwoord op de volgende vraag nog: een bestand maken? Wat bedoel je daar mee? Je noemt in je voorbeeldje 2 bestanden. Is het de bedoeling dat b.xlsx 3 keer gekopieerd wordt? Of moet a.xlsm 3 keer opgeslagen worden onder andere namen? En waar staan die namen? Wil je die 3 keer in een Inputbox opgeven, of staan ze in een cel? Met voorbeeldbestandjes wordt het voor ons een stuk makkelijker om te snappen wat je wilt. Nog afgezien van de vraag waarom....
 
Zoals beloofd een voorbeeldje voor je gemaakt. Je kan zelf de waarden invullen. Er zit 1 controle in maar daar is nog veel meer mogelijk.
Bekijk bijlage MaakBestanden.xlsm
 
Laatst bewerkt:
Dat is al een heel eind in de goede richting, thanks!
Mooi gedaan.

Het enige wat ik graag anders zou zien is dat ie echt bestand 'b.xlsx' oppakt en opslaat als
E:\Helpmij\aap.xlsx, E:\Helpmij\noot.xlsx, E:\Helpmij\mies.xlsx,...

Als ik jouw macro goed begrijp, maakt ie nu steeds een nieuw bestandje aan (zet daar vervolgens "Dit is werkboek..." in) en slaat 'm op als E:\Helpmij\...

Maar in mijn geval gaat het om een al bestaand bestandje dat ie steeds onder andere namen moet opslaan.

Lukt dat ook? :)
 
Octafish: Inderdaad, het is de bedoeling dat b.xlsx 3 keer gekopieerd wordt. Dus niet a.xlsx 3 keer aanmaken. Waar de namen staan (in de macro of erbuiten) is voor mij niet belangrijk.
 
Maar in mijn geval gaat het om een al bestaand bestandje dat ie steeds onder andere namen moet opslaan.
Lukt dat ook? :)
Simpel.
Wijzig:
Set WBK = Workbooks.Add

In:
Set WBK = Workbooks.Add("C:\Users\Gebruiker\Documents\Bron.xlsx")

Uiteraard kan je voor het nu hard gecodeerde document ook een variabele gebruiken.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan