Erreur : Incompatibilité de type InStrRev

Bonjour à tous,

J'aimerais solliciter votre aide pour une mission qui a pour objectif de récupérer dans une colonne commentaires la une date qui se trouve à - 35 caractères de la chaîne de caractère "AR fait au syndic" tout se passe bien avec la fonction InStr() en revanche comme la chaîne de caractère "*AR fait au syndic*" peut apparaître plusieurs fois dans la colonne commentaires j'ai donc décidé d'utiliser InStrRev() (car c'est bien la dernière date qui précède le dernier "AR fait au syndic" qui nous m’intéresse mais la une erreur d'incompatibilité de type que je ne comprends pas se produit.

En bonus : les commentaires sont inscrit de manière manuelle par des collaborateurs, du coup parfois la chaîne de caractère "*AR fait au syndic*" est écorché, je voulais donc savoir s'il y a un moyen de mettre plusieurs chaines comme "*ar * syndic" "*AR * SYNDIC*"...

Je vous remercie d'avance et vous souhaite de passer une excellente journée.

Cordialement

17date-ar.xlsm (22.23 Ko)

Je viens de trouver quelque chose.

Pour l'erreur d'incompatibilité c'est une erreur dans les paramètres de la fonction : InStrRev(Cells(Lig, 2), ma_chaine, -1)

salut

essaye ça :

Sub Macro1()
Dim ma_chaine As String, Lig As Long, LigMax As Long, pos As Integer

    LigMax = [B65000].End(xlUp).Row 'Dernière ligne remplie
    ma_chaine = "AR fait au syndic" 'Texte cherché
    For Lig = 2 To LigMax 'Boucle sur la totalité

       If Cells(Lig, 2) Like "*AR fait au syndic*" Then

            pos = InStrRev(Cells(Lig, 2), ma_chaine)  'Position du texte cherché
            MsgBox Mid(Cells(Lig, 2), pos - 35, 10)
          '  Cells(Lig, 1) = Format(Mid(Cells(Lig, 2), pos - 35, 10), "MM/dd/yyyy")

        End If

     Next Lig

     Columns("A").Select
     Selection.NumberFormat = "m/d/yyyy"

End Sub

Merci beaucoup, ça fonctionne correctement.

Rechercher des sujets similaires à "erreur incompatibilite type instrrev"