Test valeur cellule [Résolu]

Messages postés
45
Date d'inscription
mercredi 30 décembre 2009
Dernière intervention
2 avril 2014
- - Dernière réponse : kijx
Messages postés
45
Date d'inscription
mercredi 30 décembre 2009
Dernière intervention
2 avril 2014
- 12 nov. 2013 à 15:33
Bonjour,

J'ai un petit problème pour terminer ma macro, j'aimerai tester la valeur d'une cellule, si celle-ci est différente d'un format date :
Exemple : il n'y a pas écrit 12/11/2013 mais Supprimé le ...

alors on met le fond sans couleur et on passe à la suite.

voici ce que j'ai, je ne met pas la macro en entière le reste n'est pas forcement intéressant :

    
    'Compare si la valeur de la cellule est différent d'une date
    If monRange.Value <> Date Then
        monRange.Interior.ColorIndex = xlNone
        GoTo cellulevide
    End If
    
    


Problème c'est que ici il détecte la date du jour, n'y a t-il pas une commande qui permette de définir seulement le "format" date ?

Merci
--
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
1
Merci
If NOT IsDate (monRange.Value) Then

Merci jordane45 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de jordane45
Messages postés
23551
Date d'inscription
mercredi 22 octobre 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
0
Merci
Bonjour,
Tu parles de Macro ... mais tu postes dans la section VB.net... ??

Je peux déplacer le sujet mais avant, confirmes moi dans quel langage tu programme stp..

Ensuite, en VBA, il existe une fonction isDate.
http://msdn.microsoft.com/fr-fr/library/00wf8zk9(v=vs.90).aspx


Commenter la réponse de jordane45
Messages postés
45
Date d'inscription
mercredi 30 décembre 2009
Dernière intervention
2 avril 2014
0
Merci
ça peut être pas mal mais comment est-ce que sa s'utilise ?
J'ai tenté quelque chose mais sans succès :

'Compare si la valeur de la cellule est différent d'une date
    If monRange.Value <> IsDate Then
        monRange.Interior.ColorIndex = xlNone
        GoTo cellulevide
    End If


ou alors déclaré une variable en boolean
Dim valeurcellule as boolean
formatdate = #12/11/2013#
valeurcellule = isdate(valeurcellule)

Mais la il va me retourner juste True pour valeurcellule et en prenant en compte la date que je lui ai indiqué ? et pas un format de date ?

--
Commenter la réponse de kijx
Messages postés
45
Date d'inscription
mercredi 30 décembre 2009
Dernière intervention
2 avril 2014
0
Merci
Merci Jordane45, j'avais trouvé également mais en beaucoup plus compliqué :)

Dim formdate As Boolean

'Défini si la valeur de la cellule est une date ou non, renvoi vrai ou faux
formdate = IsDate(monRange.Value)
    
    
    'Si la valeur de la cellule est faux donc pas au format d'un date on ne met aucune remplissage
    If formdate = False Then
        monRange.Interior.ColorIndex = xlNone
        GoTo cellulevide
    End If 


--
Commenter la réponse de kijx

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.