Comment Extraire une portion de mot dans une cellule?

Bonjour,

Peut-on extraire une portion de mot ?

Extraire toutes les cellules de la colonne A :

1 exemple: qui contiennent "()"

2 exemple: Extraire toutes les cellules de A avant la "("

3 exemple: ceux qui ne contiennent pas de "()"

Est-ce possible ?

18extrairenom.xlsm (14.03 Ko)

merci

bonjour,

une proposition via une fonction personnalisée (voir exemple d'utilisation dans le fichier joint)

Function extraire(texte, retour)
'texte = texte à analyser
'retour = type de réponse attendue, 1= texte si contient (), 2= texte avant ( si contient (, 3 texte si ne contient pas (
    s = ""
    b = Split(texte & "(", "(")
    extraire = ""
    Select Case retour
        Case 1
            If InStr(texte, ")") > 0 Then
                extraire = texte
            End If
        Case 2
            If UBound(b) = 2 Then
                extraire = b(0)
            End If
        Case 3
            If UBound(b) = 1 Then
                extraire = texte
            End If
    End Select
End Function
16extrairenom.xlsm (22.76 Ko)

Bonjour h2so4,

Merci, je réponds de mon tel.

Je vais regarder ça et te tiens au courant.

A+

Ge0ffroy

bonjour

une contribution

cordialement

23geoffroy.xlsm (17.16 Ko)

Bonjour Tulipe_4 et H2so4,

Sympa

merci beaucoup

pour h2so4 comment lancer la fonction?

ça marche une fois sur 2 maintenant il signale que la fonction n'est pas valide

J'ai dû louper un épisode?

A+

re-bonjour,

une fonction personnalisée est une fonction à utiliser comme une fonction standard excel

voir exemple de syntaxe dans ta feuille nom dans les colonnes i, j et k

=extraire(A2,1) pour afficher le contenu de A2 qui contient ()

=extraire(A2,2) pour afficher le contenu de A2 qui précède le caractère (, si ( est trouvé dans A2

=extraire(A2,3) pour afficher le contenu de A2 si A2 ne contient pas de (

merci

voir exemple de syntaxe dans ta feuille nom dans les colonnes i, j et k

J'ai vu la fonction 'extraire' mais pourquoi que cela ne fonctionne plus

je saisie:

=extraire(A2;2)

la fonction apparaît mais résultat 'fonction non valide'


j'ai une autre petite question.

Grace à ta fonction, j'ai pu copier mes cellules avec un lien hypertexte sans erreur

résultat du contenu de la cellule =

https://www.site.org/wiki/Massegros Causses#/maplink/1

Mais le lien n'apparaît seulement après cette manipulation F2+ Enter sur chaque cellule

Peut-on le faire automatiquement?

merci

Bonjour à tous, dans le même style que Tulipe par formule :

=SIERREUR(GAUCHE(A2;CHERCHE(" (";A2)-1);A2)

Bonjour Xmenpl,

Merci

re-bonjour,

J'ai vu la fonction 'extraire' mais pourquoi que cela ne fonctionne plus

peux-tu mettre un classeur avec quelques données qui posent problèmes avec la fonction personnalisée ?

Bonsoir,

voilà

merci

cette ligne elle sert à quoi?

   s = ""
13extrairefalse.xlsm (15.62 Ko)
extraire1 extraire2

bonsoir,

cette ligne elle sert à quoi?

s = ""

à rien, j'ai oublié de l'enlever.

quant à l'autre problème, il s'agit d'un problème de nom de fonction qui semble incompatible avec la version FR de Excel.

voici donc une correction

Function extrait(texte, retour)
'texte = texte à analyser
'retour = type de réponse attendue, 1= texte si contient (), 2= texte avant ( si contient (, 3 texte si ne contient pas (
    b = Split(texte & "(", "(")
    extrait = ""
    Select Case retour
        Case 1
            If InStr(texte, ")") > 0 Then
                extrait = texte
            End If
        Case 2
            If UBound(b) = 2 Then
                extrait = b(0)
            End If
        Case 3
            If UBound(b) = 1 Then
                extrait = texte
            End If
    End Select
End Function
14extrairefalse.xlsm (19.44 Ko)

Bonjour,

Merci beaucoup ça fonctionne

si je veux juste ce qui se trouve entre ( ) que les 5 chiffres

comme fait-on?

merci

bonjour,

j'ai ajouté une valeur de paramètre retour (4 renvoie le resultat entre ())

Function extrait(texte, retour)
    'texte = texte à analyser
    'retour = type de réponse attendue, 1= texte si contient (), 2= texte avant ( si contient (, 3 texte si ne contient pas (,4 le texte entre ()
    b = Split(texte & "(", "(")
    extrait = ""
    Select Case retour
        Case 1
            If InStr(texte, ")") > 0 Then
                extrait = texte
            End If
        Case 2
            If UBound(b) = 2 Then
                extrait = b(0)
            End If
        Case 3
            If UBound(b) = 1 Then
                extrait = texte
            End If
        Case 4
            If UBound(b) = 2 Then
                If InStr(texte, ")") > 0 Then
                    extrait = Left(b(1), Len(b(1)) - 1)
                End If
            End If
    End Select
End Function
12extraire.xlsm (19.95 Ko)

Excellent

Merci 🙏

A+

Ge0ffroy

Bonjour,

J'ai oubié,

si tu as encore un peu de temps à m'accorder

j'aurais besoin de ceci

Feuille "ville"

Rechercher la correspondance de la colonne C dans la colonne M et l'affiche en colonne D

soit ici pour la cellule

C13 =01 recherche en colonne M = (01) et affiche Ain (01) en D13

recherche et affiche

Merci beaucoup

re-,

Bravo

Simple et rapide

merci

Ge0ffroy

Rechercher des sujets similaires à "comment extraire portion mot"