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

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
 

Fichiers joints

Tamm1

XLDnaute Nouveau


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
 

frangy

XLDnaute Occasionnel
Désolé, il n'y a aucun élément permettant de savoir à quel endroit effectuer la séparation des lignes.

Cordialement.
 

job75

XLDnaute Barbatruc
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+
 

Fichiers joints

job75

XLDnaute Barbatruc
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.
 

Fichiers joints

Dernière édition:

Discussions similaires


Haut Bas