Comment supprimer desoccurrences sur Excel 07
Fermé
Pogona
Messages postés
2
Date d'inscription
jeudi 9 juillet 2009
Statut
Membre
Dernière intervention
11 juin 2010
-
11 juin 2010 à 23:22
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 13 juin 2010 à 20:32
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 13 juin 2010 à 20:32
A voir également:
- Comment supprimer desoccurrences sur Excel 07
- Comment supprimer une page sur word - Guide
- Supprimer liste déroulante excel - Guide
- Comment calculer la moyenne sur excel - Guide
- Supprimer compte instagram - Guide
- Comment aller à la ligne sur excel - Guide
3 réponses
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
11 juin 2010 à 23:25
11 juin 2010 à 23:25
bonjour,
oui c'est tout à fait possible avec une macro VBA par exemple. Mais pour la faire il faudrait déjà avoir un peu plus de détails . Le numéro de ligne est-il toujours au début ou toujours à la fin ?
Y a t-il des espaces entre les parenthèses et le numéro ?
A quoi ressemble plus précisément ta feuille (il y a juste une colonne et 70000 lignes ? Dans la colonne le type de variable est bien "Texte" ? )
oui c'est tout à fait possible avec une macro VBA par exemple. Mais pour la faire il faudrait déjà avoir un peu plus de détails . Le numéro de ligne est-il toujours au début ou toujours à la fin ?
Y a t-il des espaces entre les parenthèses et le numéro ?
A quoi ressemble plus précisément ta feuille (il y a juste une colonne et 70000 lignes ? Dans la colonne le type de variable est bien "Texte" ? )
Pogona
Messages postés
2
Date d'inscription
jeudi 9 juillet 2009
Statut
Membre
Dernière intervention
11 juin 2010
11 juin 2010 à 23:33
11 juin 2010 à 23:33
Bonsoir
Le numéro de ligne est-il toujours à la fin
Il n'y a pas d'espaces entre les parenthèses et le numéro
Il y a 11 feuilles. Chacune contient une colonne de 6360 lignes, les lignes sont séparées par une ligne vide
Dans la colonne il y a un texte suivi d'un n° ex.
Pierre mange une pomme (1)
Marie verse de l'eau (2)
Merci
Hammouda
Le numéro de ligne est-il toujours à la fin
Il n'y a pas d'espaces entre les parenthèses et le numéro
Il y a 11 feuilles. Chacune contient une colonne de 6360 lignes, les lignes sont séparées par une ligne vide
Dans la colonne il y a un texte suivi d'un n° ex.
Pierre mange une pomme (1)
Marie verse de l'eau (2)
Merci
Hammouda
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
12 juin 2010 à 19:01
12 juin 2010 à 19:01
je suis en train de rechercher comment faire par macro, je te donne un retour dès que possible.
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
13 juin 2010 à 03:09
13 juin 2010 à 03:09
Alors voici la macro qui marche bien chez moi.
Elle crée une deuxième colonne qui va contenir les lignes de texte sans le numéro de fin entre parenthèses :
Pour créer une macro, va dans menu outils -> macro -> nouvelle macro. Donne lui le nom que tu souhaites. Ensuite, appuies directement sur le bouton "stop" de la petite fenêtre qui s'affichera. Va dans le menu outils->macro->macros.... sélectionne ta macro et cliques sur "modifier".
Tu peux copier le texte ci-dessus (celui entre les lignes Sub NomDeLaMacro() et End Sub).
Ensuite, lorsque tu exécuteras la macro, tu devrais avoir la deuxième colonne apparaitre avec les bonnes valeurs.
Pense à faire une copie de sauvegarde avant, avec les macros on ne sait jamais ....
Elle crée une deuxième colonne qui va contenir les lignes de texte sans le numéro de fin entre parenthèses :
Sub NomDeLaMacro() ActiveSheet.Columns(1).Copy ActiveSheet.Columns(2) Dim c As Range, pos As Integer For Each c In ActiveSheet.Range("B:B") pos = InStrRev(c.Value, "(") If pos Then c.Value = Left(c.Value, pos - 1) End If Next End Sub
Pour créer une macro, va dans menu outils -> macro -> nouvelle macro. Donne lui le nom que tu souhaites. Ensuite, appuies directement sur le bouton "stop" de la petite fenêtre qui s'affichera. Va dans le menu outils->macro->macros.... sélectionne ta macro et cliques sur "modifier".
Tu peux copier le texte ci-dessus (celui entre les lignes Sub NomDeLaMacro() et End Sub).
Ensuite, lorsque tu exécuteras la macro, tu devrais avoir la deuxième colonne apparaitre avec les bonnes valeurs.
Pense à faire une copie de sauvegarde avant, avec les macros on ne sait jamais ....
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
12 juin 2010 à 10:33
12 juin 2010 à 10:33
Bonjour,
Tu peux le faire par formule :
=SI(A2="";"";GAUCHE(A2;MAX(SI(STXT(A2;LIGNE($1:$100);1)="(";LIGNE($1:$100);0))-1))
formule matricielle à valider par shift+ctrl+entrée, à recopier vers le bas.
$100 doit être plus grand que ta plus grande phrase
S'il arrive que (x) ne soit pas précédé d'un espace enlève le -1 de la fin
Et tu termines en selectionnant la colonne de formules et copier/collage spécial valeur.
eric
Tu peux le faire par formule :
=SI(A2="";"";GAUCHE(A2;MAX(SI(STXT(A2;LIGNE($1:$100);1)="(";LIGNE($1:$100);0))-1))
formule matricielle à valider par shift+ctrl+entrée, à recopier vers le bas.
$100 doit être plus grand que ta plus grande phrase
S'il arrive que (x) ne soit pas précédé d'un espace enlève le -1 de la fin
Et tu termines en selectionnant la colonne de formules et copier/collage spécial valeur.
eric
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
12 juin 2010 à 19:00
12 juin 2010 à 19:00
salut j'ai testé, et je ne sais pas s'il y a un truc que je n'ai pas compris, mais ça ne fonctionne pas.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
12 juin 2010 à 20:24
12 juin 2010 à 20:24
Ah ?
Je viens de retester, pour moi c'est bon.
Tu as bien validé en matricielle et non par un simple enter ? Elle doit s'entourer de { }
eric
Je viens de retester, pour moi c'est bon.
Tu as bien validé en matricielle et non par un simple enter ? Elle doit s'entourer de { }
eric
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
Modifié par Pacorabanix le 13/06/2010 à 03:09
Modifié par Pacorabanix le 13/06/2010 à 03:09
j'ai essayé de faire shift+controle+enter, mais ça n'a pas mis d'accolades, non.
en fait, cette formule il faut la mettre où exactement , ça a une importance ?
(je ne sais pas ce que c'est qu'une formule "matricielle")
en fait, cette formule il faut la mettre où exactement , ça a une importance ?
(je ne sais pas ce que c'est qu'une formule "matricielle")
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 248
13 juin 2010 à 08:20
13 juin 2010 à 08:20
Bonjour,
Telle qu'elle est écrite elle est prévue pour être en ligne 2
Il faut que la formule soit en édition pour valider, donc avec le curseur qui clignote dans la zone d'édition des formules.
eric
Telle qu'elle est écrite elle est prévue pour être en ligne 2
Il faut que la formule soit en édition pour valider, donc avec le curseur qui clignote dans la zone d'édition des formules.
eric
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
13 juin 2010 à 20:32
13 juin 2010 à 20:32
excellent, merci de l'info, ça marche pour moi maintenant.