Détecter erreur #value! vba

Résolu
maxxikilla -  
 maxxikilla -
Bonjour à tous,

Je travaille sur une boucle for qui prend en compte une colonne.
Dans cette colonne, il y a des dates, que j'analyse par la suite.

Le problème est le suivant:
Il arrive parfois que dans cette colonne, j'ai des #value!.
Du coup, dans mon code, j'ai un "type dismatch", ce qui est logique.

J'aimerai faire une condition, disant que s'il y a une erreur de type #value!, alors il saute la case pour l'analyse.

Je veux mettre un "if" dans la boucle for.
Qu'est ce que je dois mettre dans ma condition "if" ?

Merci d'avance pour votre aide !

3 réponses

  1. foo
     
    Bonjour

    Pour tester une date avec 1 If

    If IsDate(Range("H14")) Then
    MsgBox "Ok"
    Else
    MsgBox "Pas Bon"
    End If

    A+

    Maurice
    1
  2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour
    que veux tu faire : restituer avec un tableau "à la suite" sans les erreurs ou avec un tableau avec des cellules "blanches" si #value ?

    au besoin

    mettre le classeur sans données confidentielles en pièce jointe sur
    https://www.cjoint.com/
    puis copier l'adresse du lien et la coller dans le message de réponse

    1
  3. maxxikilla
     
    @ maurice: Merci beaucoup, ce n'est pas exactement ce à quoi je pensais, mais cette solution est largement viable. Ma devise: Pourquoi faire simple quand on peux faire compliqué !! lol

    @michel_m En fait, il s'agit de dates que je compare à une date de référence variable ( au choix de lutilisateur )
    En fait, je demande simplement par vba de copier les lignes, lorsque les dates sont supérieures à celle fixée par l'utilisateur.
    Les dates que je compare à la date de référence sont parfois non renseignées. D'où le .value#
    La solution de maurice fonctionne parfaitement.

    Merci à tous les deux. Cordialement,
    Maxime
    0