Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Extraire les données d'une cellule APRES le signe =>

  • Initiateur de la discussion Initiateur de la discussion Tamm1
  • Date de début Date de début

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 !

Tamm1

XLDnaute Nouveau


Bonjour,

Je n'arrive pas à récupérer à obtenir les données après " => "
Si quelqu'un serait m'aider s'il vous plait ?

Par avance merci
Tam
 

Pièces jointes

J'en profite que tu t'y connaisses pour savoir s'il est possible de ne pas faire le saut de ligne sois même à chaque fois ?
Lorsqu'il y a déjà un => si je peux le mettre dans une autre ligne ?

Cordialement
 
Bonjour Tamm1, frangy,

Voyez le fichier .xlsm joint et cette fonction VBA, à placer impérativement dans un module standard :
VB:
Function Separer$(t$, ordre As Byte)
Dim i%, flag As Boolean
If ordre = 1 Then
    t = vbLf & t
    For i = 1 To Len(t)
        If Mid(t, i, 1) = vbLf Then flag = True
        If Mid(t, i, 1) = "=" Then flag = False
        If flag Then Separer = Separer & Mid(t, i, 1)
    Next
    Separer = Trim(Mid(Separer, 2))
Else
    For i = 1 To Len(t)
        If Mid(t, i, 1) = "=" Then flag = True: i = i + 2
        If flag Then Separer = Separer & Mid(t, i, 1)
        If Mid(t, i, 1) = vbLf Then flag = False
    Next
    Separer = Trim(Separer)
End If
End Function
Elle est utilisée dans les formules en B3 et C3.

Pour les renvois à la ligne (vbLf) il faut qu'ils existent préalablement en colonne A, voyez en ligne 22.

A+
 

Pièces jointes

Re,

Il y avait des espaces à supprimer en C22, ceci va mieux :
VB:
Function Separer$(t$, ordre As Byte)
Dim i%, flag As Boolean
t = Application.Trim(t) 'SUPPRESPACE
If ordre = 1 Then
    t = vbLf & t
    For i = 1 To Len(t)
        If Mid(t, i, 1) = vbLf Then flag = True
        If Mid(t, i, 1) = "=" Then flag = False
        If flag Then Separer = Separer & Mid(t, i, 1)
    Next
    Separer = Trim(Mid(Separer, 2))
Else
    For i = 1 To Len(t)
        If Mid(t, i, 1) = "=" Then flag = True: i = i + 2 - (Mid(t, i + 2, 1) = " ")
        If flag Then Separer = Separer & Mid(t, i, 1)
        If Mid(t, i, 1) = vbLf Then flag = False
    Next
End If
End Function
Fichier (2).

Bonne nuit.
 

Pièces jointes

Dernière édition:
- 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
4
Affichages
282
  • Résolu(e)
Microsoft 365 DateDif()
Réponses
5
Affichages
278
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…