Extraire Une Chaîne de Caractères dans une cellule

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Philippe Château

XLDnaute Occasionnel
Bonjour,

Quelqu'un aurait il une idée simple sans passer par le VBA si possible bien.

Je voudrais extraire la chaîne de caractères dans une cellule qui correspond à ce qu'il y derrière CN=

-Default-;EQD NOTES ADMINISTRATORS;REGIONAL FR ADMIN;CN=xxx xxxxx/OU=FR/OU=EUROPE/O=GROUP;REGIONAL ADMIN;OtherDomainServers;CN=yyy yyyyy/OU=FR/OU=EUROPE/O=GROUP;CN=wwwww/OU=SERVERS/O=GROUP;CN=zzz zzzzz/OU=FR/OU=EUROPE/O=GROUP;LocalDomainServers

et s'arrête devant le "/".

Il y dans une colonne, un nombre conséquent de cellules plus ou moins identiques, évidemment le X, Y, Z correspondent à des "Prénom NOM"

Merci à toutes et tous
 
Re : Extraire Une Chaîne de Caractères dans une cellule

Bonjour,

Merci à Magalie et à PrinceCorwin, je vais prendre la solution de PrinceCorwin, malgré qu'elle ne soit pas très jolie mais au moins elle est efficace et répond à mon besoin urgent, en attendant de procéder par une VBA.

Cordialement et encore une fois merci au Forum, toujours à l'écoute.
 
Re : Extraire Une Chaîne de Caractères dans une cellule

Bonjour à toutes et tous,

Voilà j'ai reçu un nouveau fichier, dont une donnée vient se rajouter à la question posée ci-dessus, et alors là je pense qu'il vaut mieux passer par une VBA.

En regard de chaque ligne, et cela vaut pour près de 700 lignes, il faut créer des lignes qui correspondent à chaque caractère ;, comme sur la feuille "Résultat attendu".

Bien cordialement
 

Pièces jointes

Re : Extraire Une Chaîne de Caractères dans une cellule

Bonjour, bonjour,

a tester, et à modifier selon rta configuration

VB:
Sub creerResult()
Set f = Sheets("test")
Set r = Sheets("result")
i = f.[A65000].End(xlUp).Row
k = 2
For Each xcel In f.Range("A2:A" & i)
    a = f.Cells(xcel.Row, 1)
    b = f.Cells(xcel.Row, 2)
    c = f.Cells(xcel.Row, 3)
    p = Split(f.Cells(xcel.Row, 4), ";")
    m = UBound(p)
    q = Split(f.Cells(xcel.Row, 5), ";")
    n = UBound(q)
    
    If m <> n Then
        MsgBox ("ERREUR" & vbCrLf & "Nombre de champs différents")
        Exit Sub
    Else
        For j = 0 To m
            r.Cells(k, 1) = a
            r.Cells(k, 2) = b
            r.Cells(k, 3) = c
            r.Cells(k, 4) = p(j)
            r.Cells(k, 5) = q(j)
            k = k + 1
        Next j
    End If
Next xcel
End Sub


Bone journée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
582
Retour