![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Excel Forum d'entraide sur Excel |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre du Club
![]() Date d'inscription: juin 2007
Messages: 82
|
Bonjour,
Je voudrais savoir comment faire pour ne garder que les caractères avant une parenthèses. Admettons, que dans la cellule A1, on a "Devellopez (Excel) (test)", je voudrai avoir dans la cellule A2: "Devellopez", dans la cellule A3: "Devellopez (Excel)" et dans la cellule A4: "test", c'est-à-dire que dans la cellule A2, on ne garde que les caractères avant la première parenthèse ouvrante, dans la cellule A3 les caractères avant la deuxième parenthèse ouvrante et dans la cellule A4 les caractères contenus dans la dernière parenthèse. De plus, le nombre de parenthèse peut varier ainsi que le nombre de caractère. Merci pour votre aide. |
|
|
|
|
|
#2 (permalink) |
|
Membre Expert
![]() Date d'inscription: janvier 2006
Localisation: St Cyr s/mer (83)
Âge: 64
Messages: 1 264
|
Bonsoir,
Regardez l'aide dans VBA sur la fonction "Split" mais vous pouvez également trouver des exemples sur ce forum. Mais n'oubliez pas que "Développez" ne s'écrit pas avec 2 "ll"
__________________
N'oubliez pas de cliquer sur quand vous avez obtenu la réponse à votre question.
|
|
|
|
|
|
#3 (permalink) | |
|
Membre Expert
![]() Date d'inscription: juillet 2007
Localisation: Loire Atlantique (44)
Âge: 52
Messages: 1 002
|
Salut qltmi et le forum
Citation:
A1 : Code :
Developpez (Excel) (test) Code :
=SI(ESTERR(TROUVE("(";A1));A1;GAUCHE(A1;TROUVE("(";A1)-1)) Code :
=SI(ESTERR(TROUVE("(";A1;NBCAR(A2)+2));A1;GAUCHE(A1;TROUVE("(";A1;NBCAR(A2)+2)-1)) Code :
=SI(ESTERR(TROUVE("(";A1;NBCAR(A2)+2));"";GAUCHE(SUPPRESPACE(DROITE(A1;NBCAR(A1)-NBCAR(A3)-1));NBCAR(SUPPRESPACE(DROITE(A1;NBCAR(A1)-NBCAR(A3)-1)))-1)) A1 : Developpez (Excel) (test) A2 : Developpez A3 : Developpez (Excel) A4 : test A+ |
|
|
|
|
|
|
#4 (permalink) |
|
Membre du Club
![]() Date d'inscription: juin 2007
Messages: 82
|
Bonjour,
merci pour vos deux réponses. Vu que je dois utiliser du VBA, je voudrai savoir quel solution est la plus rapide en terme d'exéution, parcourir toutes les cellules dans lequel il faut faire ce traitement (c'est-à-dire toutes les cellule de tous les 10 lignes) avec la formule split, ou mettre les formules proposées par Gorfael dans un range. Merci pour votre réponse. |
|
|
|
|
|
#5 (permalink) | |
|
Membre Expert
![]() Date d'inscription: janvier 2006
Localisation: St Cyr s/mer (83)
Âge: 64
Messages: 1 264
|
Bonjour,
Compte tenu de votre dernière réponse : Citation:
__________________
N'oubliez pas de cliquer sur quand vous avez obtenu la réponse à votre question.
|
|
|
|
|
|
|
#6 (permalink) |
|
Membre du Club
![]() Date d'inscription: juin 2007
Messages: 82
|
Bonjour,
vous trouverez en pièce jointe un exemple de fichier que je reçoit. Le fichier est rempli colonne par colonne et dès qu'un ligne est remplie on passe à la ligne suivante. La première ligne contient le nom du client, puis la première parenthèse contient son identifiant et la dernière l'identifiant de la commande. Entre la première parenthèse et la dernière il peut y avoir certaines information mais ce n'est toujours pas le cas, l'adresse de livraison si elle est différente de celle où la personne habite.... Les lignes suivantes contiennent certaines informations relatives à la commande. Je sais le fichier est très bizarre, mais je n'y peux rien. |
|
|
|
|
|
#7 (permalink) |
|
Membre Expert
![]() Date d'inscription: novembre 2006
Âge: 45
Messages: 1 078
|
si tout ton fichier est organisé comme ça, tu peux faire ça
Code :
Sub décortik() dercol = Range("iv1").End(xlToLeft).Column For i = 2 To dercol chaine = Replace(Cells(1, i), "(", ")") chaine = Replace(chaine, ") )", ")") chaine = Replace(chaine, "))", ")") temp = Split(chaine, ")") For j = 0 To UBound(temp) Cells(j + 7, i) = temp(j) Next j Next i End Sub bon week end |
|
|
|
|
![]() |
![]() |
||
Extraire caractère d'un mot
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|