Macro vérifier une condition pour poursuivre

Résolu
anthony -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

comment vérifier en début de macro que la cellule S2 soit un format date du type jj/mm/aaaa ? et si cette cellule est en format date alors la macro doit s'arrêter et afficher une msgbox ("La macro a déjà été activée")
si pas de format date alors la macro s'exécute normalement.

si S2 est une date alors msgbox ("La macro a déjà été activée") et fin de macro
sinon la macro se déroule

merci de votre aide

anthony

A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Sub Macro1()
  'Test date
  Z = IsDate(Worksheets("feuil1").Range("B2"))
  'Si fomat date
  If Z = True Then
    MsgBox ("La macro a déjà été activée")
    Exit Sub
  End If
End Sub


Bonne suite
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

ou si tu veux vraiment contrôler le format :
If [A3].NumberFormat = "m/d/yyyy" Then
    MsgBox "La macro a déjà été activée"
    Exit Sub
Else
    ' suite
End If

eric
0
anthony
 
j'avais trouvé la fonction Isdate mais ne savais pas bien l'employer.

merci c'est parfait et réponse ultra rapide.

Bonne après midi et merci
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
de rien !!!
Moi aussi j'ai pris du temps pour te répondre, et à partir d'aujourd'hui je vais zapper tes (nombreuses) questions...
eric
0
anthony
 
je ne comprends pas la réaction. je disais merci à vous 2. vu que j'ai intégré vos 2 réponses pour 2 utilisations différentes.
je disais simplement qu'en cherchant sur le net j'étais tombé sur Isdate mais je n'ai pas réussi à m'en servir et du coup je m'étais focalisé là dessus sans essayer de voir s'il y avait d'autres possibilités pour le même résultat
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
ok, tes autres posts parles pour toi, j'ai démarré un peu vite, désolé.
eric
0