VBA : Rechercher une chaine de caractères dans une autre

laurene13

XLDnaute Nouveau
Bonjour,

Je voudrais à l'aide de VBA rechercher une chaîne de caractères dans une cellule, sachant que la cellule ne contient pas que la chaîne de caractères recherchée.

J'utilise la fonction find de la façon suivante :

Code:
With Worksheets("Extract BAAN").Range(Cells(1, 1), Cells(derniere_ligne_extract, 5))

Set cel = .Find(entite, LookIn:=xlValues)

End With

Sachant que la variable entite contient une chaîne du type "LOG CMN" et que la cellule qu'il doit trouver est de ce type (tous ces caractères de cette façon dans la cellule, avec des espaces au milieu):

Date : 18/09/08 [18:01] LOG CMN Reporting Département LOG CMN Page : 6

La fonction Find n'a pas l'air de trouver étant donné que cel est vide.

Avez-vous une idée ?

Merci de votre aide,

Laurene13
 

laurene13

XLDnaute Nouveau
Re : VBA : Rechercher une chaine de caractères dans une autre

Oui, ca a l'air de fonctionner mais je ne comprends pas bien pourquoi ca ne marchait pas plus tôt.....

Peut etre la syntaxe With Worskheets("XX").Range() qui n'allait pas, il fallait mettre activesheet.columns(1), je ne comprends pas bien.....

Merci en tout cas !

Bonne soiree
 

laurene13

XLDnaute Nouveau
Re : VBA : Rechercher une chaine de caractères dans une autre

Apres m'etre a nouveau rendue compte que ca deconnait, (decidement je suis pas douee), j'ai fini par trouver un moyen de gerer l'exception du type LOG et LOG CMN (car bien entendu ce n'est pas le seul couple d'entites a faire exception...) en utilisant tes macros Pierrejean.

Merci de votre aide,

A demain peut etre (j espere pas...)

Bonne soiree
 

sebgacs

XLDnaute Nouveau
Re : VBA : Rechercher une chaine de caractères dans une autre

Bonjour,
Tout d'abord merci pour ce sujet qui m'a aider à mieux comprendre find.
J'ai un problème similaire. Avec une erreur #valeur
J'aimerai rapporter le nombre de stylos bleus au nombre de jours ouvrés dans le calcul de la formule "evolution".
Cela revient à diviser les arguments du module indice_evolution par les jours ouvrés correspondants qui sont situés dans une 2ème feuille

Pour cela il faut:
-récupérer la période situé en ligne1 et même colonne que la cellule argument de la formule "evolution"
-rechercher cette période dans la feuille "découpage calendaire"
-renvoyer dans la fonction les jours ouvrés associés à la période

J'espère être suffisamment clair, n'hésitez pas à me dire ce que vous ne comprenez pas.
Merci pour votre aide
Salutations :)
Seb
 

Pièces jointes

  • Bonneref_evolution_2.xlsm
    128 KB · Affichages: 158

Discussions similaires

Réponses
12
Affichages
529

Membres actuellement en ligne

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 185
dernier inscrit
salhit