Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA: Définir une date globale pour un ensemble de macros

  • Initiateur de la discussion Initiateur de la discussion MJ13
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

MJ13

XLDnaute Barbatruc
Bonjour à tous

J'utilise beaucoup les variables "public" en tête de module.

Mais peut-on dans un ensemble de macros définir une date à prendre en compte. C'est à dire, je la met en tête de module et elle le prend pour toutes mes macros qui seront éxécutées?

ex: MaDate= cdate("01/10/213")

Merci d'avance 🙂.
 
Re : VBA: Définir une date globale pour un ensemble de macros

Bonjour Michel🙂

essaye peut être une constante, enfin si j'ai bien compris :
Code:
Option Explicit
Public Const madate As Date = #12/31/2013#

bonne journée
@+
 
Re : VBA: Définir une date globale pour un ensemble de macros

Bonjour Pierrot, Jean-Marcel

Merci pour vos codes 🙂.

Par contre, j'ai du rajouté cdate(Madate) à cause de l'inversion de la date sur Xl2013 et sur les autres versions sans doute.
Ci-joint un code à tester:

Code VBA:
Public Const MaDate = "03/10/2013"
Sub toto()
MsgBox MaDate
ActiveCell.Value = MaDate
ActiveCell.Offset(1, 0) = CDate(MaDate)
End Sub
 
Re : VBA: Définir une date globale pour un ensemble de macros

Re

A priori la solution de Pierrot évite le pb d'inversion

Non, cela m'a fait une inversion. Mais avec Cdate, ça roule 🙂.

C'est pour ça qu'avec des dates, il faut toujours tester avec une possibilité d'inversion avec un mois et un jour inférrieur à 13.
 
Re : VBA: Définir une date globale pour un ensemble de macros

Re

JM: Ah, Oui en effet, mais, je m'étais concentré de tomate 😱 sur le code de Pierrot. Comme quoi, avec Excel, il faut tout tester 🙂.

Toto, c'est bien le cancre chez moi 😱.

Code:
Public Const MaDate As Date = "10/3/2013"
Public Const MaDate2 As Date = "10/03/2013"
Public Const MaDate3 As Date = #10/03/2013#
Sub tata()
MsgBox MaDate
ActiveCell.Value = CDate(MaDate)
ActiveCell.Offset(1, 0) = MaDate
End Sub
Sub titi()
MsgBox MaDate2
ActiveCell.Value = CDate(MaDate2)
ActiveCell.Offset(1, 0) = MaDate2
End Sub
Sub toto()
MsgBox MaDate3
ActiveCell.Value = CDate(MaDate3)
ActiveCell.Offset(1, 0) = MaDate3
End Sub
 
Re : VBA: Définir une date globale pour un ensemble de macros

Re, bonjour Jean-Marcel

A noter, que spécifier comme ceci (entre #):
Code:
Public Const MaDate3 As Date = #10/3/2013#
la date vaut MM/JJ/AAAA, c'est pour cela que j'avais précisé une date au 31 décembre.... Dans ton exemple Michel, vaut 3 octobre 2013
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…