Excel VBA : Lenght variable dans fonction MID
Résolu
Eaheru
Messages postés
205
Statut
Membre
-
Eaheru Messages postés 205 Statut Membre -
Eaheru Messages postés 205 Statut Membre -
Bonjour,
Tout est dans le titre :)
j'essaie de pouvoir variabiliser l'argument length de la fonction MID.
Mon besoin est d'etraire une chaine de caracteres incluse dans une chaine de caracteres plus grande. Il me faut recuperer systematiquement depuis le 12 caractere jusqu'au 6 eme inclus avant la fin de la chaine initiale.
J'ai donc essayé :
Mais l'argument "length" est ignoré, ainsi que lorsque je fais plutot :
Du coup je ne sais pas si c'est faisable. Peut être faut il que je parte dans une autre voie ?
Merci d'avance pour votre aide, je ne vois plus trop comment avancer la :)
Tout est dans le titre :)
j'essaie de pouvoir variabiliser l'argument length de la fonction MID.
Mon besoin est d'etraire une chaine de caracteres incluse dans une chaine de caracteres plus grande. Il me faut recuperer systematiquement depuis le 12 caractere jusqu'au 6 eme inclus avant la fin de la chaine initiale.
J'ai donc essayé :
ComName = Mid(Cells(3, 1).Value, 12, (Len(Cells(3, 1)) - 5))
Mais l'argument "length" est ignoré, ainsi que lorsque je fais plutot :
test = Len(Cells(3, 1))
MoinD = test - 5
Cells(1, 5) = MoinD
ComName = ""
ComName = Mid(Cells(3, 1).Value, 12, MoinD)
Du coup je ne sais pas si c'est faisable. Peut être faut il que je parte dans une autre voie ?
Merci d'avance pour votre aide, je ne vois plus trop comment avancer la :)
A voir également:
- Excel VBA : Lenght variable dans fonction MID
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
Bonjour,
Peut-être ceci, si j'ai bien compris ta demande ..; le string d'origine étant en cellule E5 et le résultat placé en E6 dans mon exemple
(la chaine en E5 doit bien sur avoir une longueur suffisante)
Thierry
Akadev
------------------------------------------------
Logiciel revisité de Sudoku sur Windows 8 :
http://apps.microsoft.com/windows/fr-lu/app/aka-sudoku-hot-or-cold/2cdc407a-0d44-4772-b125-e0821fd93bca
Jeu match 3 Online sur Windows 8 :
http://apps.microsoft.com/windows/fr-lu/app/aka-match-3-online/49c3c770-e0c9-4f70-a776-4892c6cc5ccd
Peut-être ceci, si j'ai bien compris ta demande ..; le string d'origine étant en cellule E5 et le résultat placé en E6 dans mon exemple
(la chaine en E5 doit bien sur avoir une longueur suffisante)
Sub test()
tsource = Range("E5").Value
tdestination = Mid(tsource, 12, Len(tsource) - 12 - 5)
Range("E6").Value = tdestination
End Sub
Thierry
Akadev
------------------------------------------------
Logiciel revisité de Sudoku sur Windows 8 :
http://apps.microsoft.com/windows/fr-lu/app/aka-sudoku-hot-or-cold/2cdc407a-0d44-4772-b125-e0821fd93bca
Jeu match 3 Online sur Windows 8 :
http://apps.microsoft.com/windows/fr-lu/app/aka-match-3-online/49c3c770-e0c9-4f70-a776-4892c6cc5ccd