A voir également:
- Test déclencher une action
- Test performance pc - Guide
- Tubidy film d'action telecharger - Télécharger - TV & Vidéo
- Cette action ne peut pas être réalisée car le fichier est ouvert dans system - Guide
- Test composant pc - Guide
- Test ram - Guide
5 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
Modifié par Polux31 le 8/01/2014 à 11:11
Modifié par Polux31 le 8/01/2014 à 11:11
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
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
8 janv. 2014 à 14:07
8 janv. 2014 à 14:07
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
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
Modifié par Polux31 le 8/01/2014 à 15:04
Modifié par Polux31 le 8/01/2014 à 15:04
De rien.
Tu nommes la colonne A en A1 "Année" et la colonne B en B1 "RAZ".
Mais on peut se passer de titre, c'est juste pour vérifier que le RAZ a été effectué et de mettre à jour quand c'est fait.
Tu nommes la colonne A en A1 "Année" et la colonne B en B1 "RAZ".
Mais on peut se passer de titre, c'est juste pour vérifier que le RAZ a été effectué et de mettre à jour quand c'est fait.
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