Test déclencher une action
vieuxray
-
vieuxray -
vieuxray -
Bonjour a toutes et tous, Forum bonjour
Excel 2007 VBA
Dans mon programme de compta, je souhaiterai svp, par un petit test en code VBA déclencher (une seule fois par an une action automatique)
Donc cela serai pour le premier jour de l'année, si (01 janv 2014) alors je déclenche mon action qui consistera de me remettre automatiquement a zéro mes tableaux.
Juste besoin du code qui me permettra le jour arrivé déclencher l'action a réaliser.
Par contre le premier de l'an, il faudrai qu'une fois l'action déclencher ne se produise qu'une seule et unique fois
Car si le fichier est ouvert plusieurs fois dans cette mème journée, ne pas refaire la RAZ
Pour infos le fichier compta peut etre ouvert et fermer une ou plusieurs fois par jour.
Merci pour votre aide ainsi que de votre temps.
Cordialement Ray
Excel 2007 VBA
Dans mon programme de compta, je souhaiterai svp, par un petit test en code VBA déclencher (une seule fois par an une action automatique)
Donc cela serai pour le premier jour de l'année, si (01 janv 2014) alors je déclenche mon action qui consistera de me remettre automatiquement a zéro mes tableaux.
Juste besoin du code qui me permettra le jour arrivé déclencher l'action a réaliser.
Par contre le premier de l'an, il faudrai qu'une fois l'action déclencher ne se produise qu'une seule et unique fois
Car si le fichier est ouvert plusieurs fois dans cette mème journée, ne pas refaire la RAZ
Pour infos le fichier compta peut etre ouvert et fermer une ou plusieurs fois par jour.
Merci pour votre aide ainsi que de votre temps.
Cordialement Ray
A voir également:
- Test déclencher une action
- Test performance pc - Guide
- Steam deck oled test - Guide
- Télécharger film d'action gratuitement et rapidement - Télécharger - TV & Vidéo
- Test disque dur - Télécharger - Informations & Diagnostic
- Vous devez disposer d'une autorisation pour effectuer cette action - Guide
5 réponses
Bonjour,
Créer un module ModMAJ et copier/coller le code ci dessous
Dans ThisWorkbook créer ou ajouter à la procédure Open
Dans le fichier Excel créer une feuille et la nommer "Calendrier" avec en A1 [Année] et B1 [RAZ].
Maintenant, il faut se poser la bonne question :
Est-ce indispensable d'alourdir un fichier et de lancer une procédure à chaque ouverture du fichier pour une action qui n'a lieu qu'une seule fois par an à une date qu'on ne peut pas oublier !!!
;0)
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
Créer un module ModMAJ et copier/coller le code ci dessous
'----------------------------------
' Module ModMAJ
'----------------------------------
Option Explicit
Private Const jourdelan = "1/1"
Private jour
Private mois
Private an
Public Function DoesJourDelAn() As Boolean
jour = Day(Date)
mois = Month(Date)
an = Year(Date)
If CStr(jour & "/" & mois) = jourdelan Then
DoesJourDelAn = True
Else
DoesJourDelAn = False
End If
End Function
Public Function DoesRAZ() As Boolean
Dim lig As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Calendrier")
lig = 2
While ws.Range("A" & lig).Value <> ""
If CInt(ws.Range("A" & lig).Value) = an And ws.Range("B" & lig).Value = "Oui" Then
RAZ = True
Exit Function
End If
lig = lig + 1
Wend
RAZ = False
End Function
Public Sub MAJCalendrier()
Dim derlig As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Calendrier")
derlig = ws.Range("A" & Rows.Count).End(xlUp).Row + 1
ws.Range("A" & derlig).Value = an
ws.Range("B" & derlig).Value = "Oui"
End Sub
Dans ThisWorkbook créer ou ajouter à la procédure Open
Private Sub Workbook_Open()
If ModMAJ.DoesJourDelAn = True Then
If ModMAJ.DoesRAZ = False Then
'code pour faire la remise à zéro des tableaux
ModMAJ.MAJCalendrier
End If
End If
End Sub
Dans le fichier Excel créer une feuille et la nommer "Calendrier" avec en A1 [Année] et B1 [RAZ].
Maintenant, il faut se poser la bonne question :
Est-ce indispensable d'alourdir un fichier et de lancer une procédure à chaque ouverture du fichier pour une action qui n'a lieu qu'une seule fois par an à une date qu'on ne peut pas oublier !!!
;0)
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
Pour faire le test il suffit de changer la valeur de la constante:
;0)
'Pour tester avec le jour courant (aujourd'hui le 8/1/2014) Private Const jourdelan = "8/1"
;0)
Salut polux31
Merci pour ta réponse et aussi pour le code, c'est gentil.
Pour répondre a ta question, effectivement vu que j'ouvre ce fichier au moins une fois par jour, il me serai facile de faire un RAZ des tableaux, j'y ai penser.
Mais comme je suis curieux, j'ai opter également pour cette façon automatique de faire et comme je ne savais pas comment faire ce bout de code.
Grace a toi celui ci va aller mes archives de bout de codes via mon classeur.
Hé puis pour ce qui est d'alourdir mon fichier et de lancer une procédure à chaque ouverture n'ai pas grace, le fichier est simple et sans calculs compliqués.
Par contre svp, comment je peux simuler la date pour essayer le code car bien sur je vais pas attendre le 01 janvier 2015 ihihihi
En tout cas je te remercie beaucoup pour ton aide, bonne après midi a toi
Cdlt Ray
Merci pour ta réponse et aussi pour le code, c'est gentil.
Pour répondre a ta question, effectivement vu que j'ouvre ce fichier au moins une fois par jour, il me serai facile de faire un RAZ des tableaux, j'y ai penser.
Mais comme je suis curieux, j'ai opter également pour cette façon automatique de faire et comme je ne savais pas comment faire ce bout de code.
Grace a toi celui ci va aller mes archives de bout de codes via mon classeur.
Hé puis pour ce qui est d'alourdir mon fichier et de lancer une procédure à chaque ouverture n'ai pas grace, le fichier est simple et sans calculs compliqués.
Par contre svp, comment je peux simuler la date pour essayer le code car bien sur je vais pas attendre le 01 janvier 2015 ihihihi
En tout cas je te remercie beaucoup pour ton aide, bonne après midi a toi
Cdlt Ray
Re
Merci pour la réponse, je n'ai pas été malin j'aurai pu y penser, désolé.
Par contre
Dans le fichier Excel j'ai créer une feuille et nommer "Calendrier", ça c'est OK
Mais ci dessous je ne comprends pas trop bien, tu peux svp m'expliquer.
(1) avec en A1 [Année] ???????????
(2) et B1 [RAZ] ?????????????
Merci Ray
Merci pour la réponse, je n'ai pas été malin j'aurai pu y penser, désolé.
Par contre
Dans le fichier Excel j'ai créer une feuille et nommer "Calendrier", ça c'est OK
Mais ci dessous je ne comprends pas trop bien, tu peux svp m'expliquer.
(1) avec en A1 [Année] ???????????
(2) et B1 [RAZ] ?????????????
Merci Ray
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut polux31,
Voila pour moi c'est bon, j'ai fait l'essai et ça m'écrit bien 2014 en A2 et "OUI" en B2
Je vais adapter a mon programme et prochaine mise a jour RDV le 01 01 2015
d'ici la, il y aura de l'eau de passée sous le pont LOL
Merci beaucoup pour ton aide et aussi pour ton savoir partagé
Une bonne continuation pour toi et a bientot sans doute
et encore tous mes remerciements.
Bien cordialement Raymond
Voila pour moi c'est bon, j'ai fait l'essai et ça m'écrit bien 2014 en A2 et "OUI" en B2
Je vais adapter a mon programme et prochaine mise a jour RDV le 01 01 2015
d'ici la, il y aura de l'eau de passée sous le pont LOL
Merci beaucoup pour ton aide et aussi pour ton savoir partagé
Une bonne continuation pour toi et a bientot sans doute
et encore tous mes remerciements.
Bien cordialement Raymond