recherche chaine de caractère dans une cellule de la feui1 et copiée dans feuil2

  • Initiateur de la discussion macanche
  • Date de début
M

macanche

Guest
Bonjour à tous,
Je souhaite faire une recherche des chaines de caractère entre double parenthèse dans des lignes de la colonne A de la feuil1 et les copiées une par une dans les lignes colonne A de la feuil2.
Exemple :
Feuil1

aaaa ((nom)) bbb ((prénom)) ddd
cc ((adresse)) eeeee ((téléphone)) fff

le resultat dans feuil2:

((nom))
((prénom))
((adresse))
((téléphone))

Est-il possible d'avoir une macro pour exécuté cette tâche, sachant que j'utilise Excel97.
Merci par avance.
Cordialement.
@+
 
O

omicron

Guest
Bonsoir Macanche,

Tu touveras en pièce jointe un exemple qui devrait répondre au problème posé.

=====================================================
Private Sub But_Find_Click()
Dim debvar As Integer

'Effacement des cellules des la colonne A de Feuil2
Sheets("Feuil2").UsedRange.Columns("A").ClearContents

'Initialisation indice ligne stockage valeur cherchée dans Feuil2
i = 1

'Analyse des cellules de la colonne "A" de la Feuil1
For Each Cel In Sheets("Feuil1").UsedRange.Columns("A").Cells
Chn = Cel.Value

'Itération de la recherche dans cellule courante tant qu'il y a des ((

Do While Len(Chn) <> 0


j = InStr(Chn, "((")
If j = 0 Then Exit Do

k = InStr(Chn, "))")
If k = 0 Then Exit Do

txt = Mid(Chn, j + 2, k - j - 2)

If Len(txt) <> 0 Then
Sheets("Feuil2").Cells(i, 1) = "((" & txt & "))"
i = i + 1
End If

Chn = Right(Chn, Len(Chn) - k - 1)
Loop

'Itération sur cellule suivante
Next Cel

Sheets("Feuil2").Activate

End Sub

=====================================================

Si celà ne colle pas n'hésite pas à me recontacter.

Cordialement ....

Omicron
 

Pièces jointes

  • RechercheTexte.zip
    12 KB · Affichages: 35
O

omicron

Guest
Bonsoir Macanche,

En pièce jointe, une nouvelle version qui devrait répondre à ta dernière demande ...

Cordialement

Omicron.
 

Pièces jointes

  • RechercheTexteV3.zip
    14.7 KB · Affichages: 48
O

omicron

Guest
Bonjour Alain,

Avant de te proposer une solution, juste une confirmation.
Si j'ai bien compris, tu souhaites la même chose que ce que je t'ai envoyé, à ce détail près que ne seront pas considérés comme doublons deux textes identiques dont l'index diffère au niveau de la première lettre.

Ex:
GOO05 et G0006 et G0008 ((Nom)) sont considérés comme doublon car 1ère lettre index identique (G)
F0001 et F0005 ((Nom)) sont considérés comme doublon car 1ère lettre index identique (F)
G0005 ou G0006 ou G0008 ((Nom)) et F0001 ou F0005 (Nom) ne sont pas considérés comme doublons car 1ères lettres index sont différente (G) et (F)

Merci de confirmer et à bientôt.

Omicron.
 

Discussions similaires

Statistiques des forums

Discussions
314 190
Messages
2 107 006
Membres
109 735
dernier inscrit
Mounskad