Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Software >> Microsoft Excel >> Content
Hoe kunt u in Excel een macro maken die de inkomenswerkmap opslaat en vervolgens elke week een nieuwe maakt?
Deze VBA-macro slaat de huidige werkmap op en maakt vervolgens een nieuwe werkmap met een op datum gebaseerde bestandsnaam voor de nieuwe week. Het gaat op een elegante manier om met potentiële fouten.

```vba

Sub SaveAndCreateNewWeeklyWorkbook()

Dim wb als werkboek

Dim newWb als werkboek

Dim strBestandsnaam als tekenreeks

Dim strFilePath als tekenreeks

Dim dt als datum

' Haal de huidige werkmap op

Stel wb =ThisWorkbook in

' Haal de huidige datum op

dt =Datum

' Bereken de startdatum van de huidige week (zondag)

dt =dt - Weekdag(dt, vbZondag) + 1

' Formatteer de datum voor de bestandsnaam (JJJJ-MM-DD)

strFileName =Formaat(dt, "JJJJ-MM-DD") &"Inkomen.xlsx"

' Geef het bestandspad op (wijzig dit naar de gewenste locatie)

strFilePath ="C:\Uw\Bestand\Path\" ' <--- WIJZIG DIT IN UW GEWENSTE PAD

'Volledig bestandspad

strFilePath =strFilePath &strFileName

' Sla de huidige werkmap op

Bij fout Hervatten Volgende 'Behandel mogelijke fouten tijdens het opslaan

wb.SaveAs Bestandsnaam:=strFilePath, Bestandsformaat:=xlOpenXMLWorkbook

Als foutnummer <> 0 Dan

MsgBox "Fout bij opslaan werkmap:" &Err.Description, vbCritical

Verlaat sub

Einde Als

Bij fout Ga naar 0

'Maak een nieuwe werkmap

Stel newWb =Werkmappen in.Add

' Sla de nieuwe werkmap op met hetzelfde bestandspad maar een andere datum

dt =dt + 7 'Datum van volgende week

strFileName =Formaat(dt, "JJJJ-MM-DD") &"Inkomen.xlsx"

strFilePath ="C:\Uw\Bestand\Path\" &strFileName ' <--- WIJZIG DIT IN UW GEWENSTE PAD

Bij fout Hervat volgende

newWb.SaveAs Bestandsnaam:=strFilePath, Bestandsformaat:=xlOpenXMLWorkbook

Als foutnummer <> 0 Dan

MsgBox "Fout bij aanmaken nieuwe werkmap:" &Err.Description, vbCritical

newWb.Close SaveChanges:=False 'Sluit zonder op te slaan als er een fout optreedt

Verlaat sub

Einde Als

Bij fout Ga naar 0

'Optioneel:voeg een berichtvenster toe om de voltooiing te bevestigen.

MsgBox "Werkmap opgeslagen en nieuwe wekelijkse werkmap gemaakt.", vbInformation

Einde sub

```

Voordat u start:

1. Wijzig `"C:\Uw\Bestand\Pad\"`: Absoluut cruciaal om deze tijdelijke aanduiding te vervangen door het daadwerkelijke mappad waar u uw Excel-bestanden wilt opslaan. Onjuiste paden leiden tot fouten. Zorg ervoor dat de map bestaat.

2. Open de VBA-editor: Druk in Excel op Alt + F11 om de VBA-editor te openen.

3. Een module invoegen: Ga in de VBA-editor naar Invoegen> Module.

4. Plak de code: Plak de volledige code in de module.

5. Voer de macro uit: Ga terug naar Excel en voer de macro uit (mogelijk moet u deze aan een knop toewijzen of uitvoeren via het tabblad Ontwikkelaars> Macro's).

Hoe het werkt:

* Slaat de huidige werkmap op: De code slaat eerst de actieve werkmap op met een bestandsnaam op basis van de startdatum van de huidige week (zondag).

* Maakt een nieuwe werkmap: Vervolgens wordt een nieuwe, lege werkmap toegevoegd.

* Benoemt en slaat de nieuwe werkmap op: De nieuwe werkmap wordt opgeslagen met een bestandsnaam die is gebaseerd op de begindatum van *volgende* week.

* Foutafhandeling: De instructies 'Bij fout hervatten volgende' en foutcontrole voorkomen dat de macro crasht als er problemen zijn bij het opslaan van bestanden (bijvoorbeeld onvoldoende rechten, het bestand bestaat al). Het biedt informatieve foutmeldingen.

* Bestandsformaat: `xlOpenXMLWorkbook` zorgt voor compatibiliteit met moderne Excel-versies (.xlsx).

Vergeet niet regelmatig een back-up van uw gegevens te maken, omdat geautomatiseerde processen soms onverwachte problemen kunnen tegenkomen. Test deze macro grondig op een voorbeeldbestand voordat u deze met belangrijke gegevens gebruikt.

Previous: Next:
  Microsoft Excel
·Hoe maak je een grafiek van ee…
·Hoe tel je in Excel 50 op bij …
·Welke functie wordt gebruikt o…
·Welk tabblad bevindt zich de v…
·Hoe gebruik je een Excel-progr…
·Hoe stel je significante cijfe…
·Waar kan de knop worden gevond…
·Hoe kunt u een groot Excel -be…
·Hoe kan iemand onderscheid mak…
  Related Articles
Welke maatregelen kunnen worden genomen …
Wat is de betekenis van tijdssegmenten i…
Wat is de betekenis van het primaire att…
Wat is de betekenis van de werking van d…
Wat is de betekenis van overhead in comp…
Wat is de betekenis van efficiëntie in …
Wat is de rol van schema in programmeert…
Wat is de rol van schema in de informati…
Wat is het doel van het Windows-archiefk…
  Software Articles
·Programmeren met VBA voor Microsoft Exce…
·Welke bedrijven bieden volgens online be…
·Hoe maak je een Microsoft Access-databas…
·Hoe maak je een Funny Flash Movie 
·Waar kunt u uitgebreide tutorials voor P…
·Hoe om te leren SPSS Software 
·Hoe te Macro's inschakelen in Excel 2003…
·Waar kun je de plug -in voor het verwijd…
·Definitie van een Adobe Reader Illegale …
Copyright © Computer Kennis https://www.nldit.com