Dans un tableau colonnes D et CH, j'ai du texte sous cette forme " 0 0000 E Kx 000000 " (le x pouvant être C, D, F, J, M, U).
J'extrais le texte depuis le E jusqu'à la fin (par ex: E Kx 000000) avec ce code :
VB:
For Each c In Range("B1:B1048576")
xx = InStr(c.Offset(0, 2).Value, "E")
TENANT = Mid(c.Offset(0, 2).Value, xx, 20)
TENANT1 = c.Offset(0, 2).Value
ABOUT = Mid(c.Offset(0, 84).Value, xx, 20)
ABOUT1 = c.Offset(0, 84).Value
Next
Pour toutes les lettres et dans les deux colonnes, cela fonctionne bien mais si mon "x" est un J alors cela ne m'affiche pas tout le texte.
Bonjour Philippe,
En PJ un essai, mais n'ayant pas compris votre code, je vous en propose un plus simple.
Il faut limiter l'action sur la taille du tableau pour être plus rapide.
VB:
Sub essai()
Taille = [B65000].End(3).Row ' Limite du tableau
For Each c In Range("B1:B" & Taille)
Pos = InStr(1, c, "E") ' Cherche position de E
Résultat = Mid(c, Pos) ' Extrait de E jusqu'à la fin
Range("D" & c.Row) = Résultat ' Range le résultat pour faire beau.
Next
End Sub