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

Datum wijzigt

Status
Niet open voor verdere reacties.

oossie

Verenigingslid
Lid geworden
19 nov 2002
Berichten
2.364
Voor een factuursheet komt in cel d4 de systeemdatum te staan met de formule =vandaag(). Tot zover werkt dat prima, maar........... de sheet wordt opgeslagen met datum die is overgenomen door de omschreven formule. maar als nu de sheet weer word geopend, verschijnt weer de datum waarop de sheet word geopend, en dit is dus niet de bedoeling omdat de belastingdienst daar moeite mee heeft. Mijn vraag is dan ook, hoe kun je dit voorkomen.

Groeten Oossie
 
' Datum opstellen bon vastleggen
Range("L1").Copy
Range("D4").PasteSpecial xlPasteValues

Stel dat je de systeemdatum in cel L1 zet met de formule =Vandaag(), en je zet bovenstaande code in ThisWorkbook, bijvoorbeeld onder Beforeclose, dan wordt de datum speciaal geplakt in cel D4

Succes!
 
Hmm, bij nader inzien is het misschien verstandiger om de code "aan een knop te hangen", anders verandert de datum alsnog iedere keer als het bestand gesloten wordt... Weet je hoe je een knop op een werkblad zet?
 
Nee, dat weet ik helaas niet, zo veel weet in niet van excel, als je voorbeelden weet, verneem ik dat graag.

Groeten Oossie
 
Delete de formule in D4
Ga naar Visual Basic Editor met Alt+F11
Dubbelklik op ThisWorkbook
Plak in het rechter vak de volgende macro:

Private Sub Workbook_Open()
If Sheets("Naam").Range("D4") = "" Then
Sheets("Naam").Range("D4") = Date
End If
End Sub

"Naam" veranderen in uw tabblad en misschien de cel ook?

Nu zal bij het openen naar D4 gaan zien als er niets in de cel staat word er een datum ingezet.
Anders gebeurd er niets als er al een datum in staat.
En is het de datum van de vorige keer.

Pierre
 
Laatst bewerkt:
Hallo,
Ik heb deze vraag even gevolgd, de VBA via deze manier werkt inderdaad prima. Het nadeel is alleen dat je per werkblad deze code aan moet maken.
Is het dan niet veel eenvoudiger om gewoon per werkblad de betreffende datum te typen???? De datum wijzigt dan ook niet bij openen, dus de Belastingdienst is ook blij!
Volgens mij gaat deze code anders zijn doel enigszins voorbij, en is het maken van de code meer werk dan gewoon typen.

Ik kan het mis hebben hoor, misschien is het inderdaad heel handig, als dat zo is dan hoor ik het graag!!

Groetjes,
Cindy
 
Ik krijg het niet voor elkaar, maar heb het blad maar even gezipt.

Waar de datum moet komen staat nu 00-00-00

dit werkblad wordt ingevuld, opgeslagen en uitgeprint op voorgedrukt papier.
 

Bijlagen

Hoi,

Makkelijkste manier is gewoon gebruik maken van de sneltoetsen:
Ctrl ;

Indien je ganse factuur echter samengesteld wordt via VBA, kan je de code er in bouwen:

Range("A1").Value = Date

Je hebt dus de keuze:
Ganse macro maken, om alles in te vullen in uw factuur... en dan kan de datum automatisch.
Of de sneltoetsen gebruiken om uw datum in te vullen.

Een macro voor enkel de datum lijkt belachelijk.
Gaat toch niet sneller dan die sneltoetsen (Extra => Macros => Macro enz...)

Luc
 
Ik heb even gekeken voor je. Nu werkt het inmiddels wel! De fout zat hem in de naam van het werkblad. Jij had hem 25 regels genoemd, maar achter het woord regels zat nog een spatie.
Wanneer je deze spatie niet in de VBA code had overgenomen, kreeg je dus constant een foutmelding!

Ik voeg het nieuwe bestand hierbij toe.

Succes ermee!
Cindy
 

Bijlagen

En Hoe moet ik de code nu aanpassen, zodat het ook op de bladen 51 regels en 77 regels werkt. Geweldig dat jullie me al zover hebben geholpen.

Groeten Oossie
 
Laatst bewerkt:
Zelfde stukje VBA kopieren voor de andere 2 werkbladen. Tekst End Sub weghalen, deze alleen maar helemaal onderaan de code zetten.

Cel en werkbbladnaam in VBA aanpassen (let op de spatie).

Als je er niet uitkomt hoor ik het wel!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan