Supprimer des éléments dans une colonne, infos mélangé
Fermé
tiketeur
Messages postés
14
Date d'inscription
mercredi 6 novembre 2013
Statut
Membre
Dernière intervention
21 février 2023
-
22 févr. 2019 à 11:04
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 23 févr. 2019 à 06:38
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 23 févr. 2019 à 06:38
A voir également:
- Supprimer des éléments dans une colonne, infos mélangé
- Déplacer une colonne excel - Guide
- Supprimer une page word - Guide
- Supprimer compte instagram - Guide
- Formule somme excel colonne - Guide
- Trier colonne excel - Guide
7 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
22 févr. 2019 à 12:07
22 févr. 2019 à 12:07
Bonjour,
Si tous les noms des villes sont sous la forme Nom Propre (Première lettre en majuscule et le reste en minuscules, et les lettres des codes en majuscules)
Essayez ceci en B1 et à tirer vers le bas
=SUBSTITUE(A1;SI(OU(CODE(STXT(A1;TROUVE(" - ";A1;1)-2;1))<97;CODE(STXT(A1;TROUVE(" - ";A1;1)-2;1))>122);GAUCHE(A1;TROUVE(" - ";A1;1)+2);STXT(A1;TROUVE(" - ";A1;1);10));"")
Cdlt
Si tous les noms des villes sont sous la forme Nom Propre (Première lettre en majuscule et le reste en minuscules, et les lettres des codes en majuscules)
Essayez ceci en B1 et à tirer vers le bas
=SUBSTITUE(A1;SI(OU(CODE(STXT(A1;TROUVE(" - ";A1;1)-2;1))<97;CODE(STXT(A1;TROUVE(" - ";A1;1)-2;1))>122);GAUCHE(A1;TROUVE(" - ";A1;1)+2);STXT(A1;TROUVE(" - ";A1;1);10));"")
Cdlt
via55
Messages postés
14504
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
21 décembre 2024
2 738
22 févr. 2019 à 15:32
22 févr. 2019 à 15:32
Bonjour
Avec une fonction personnalisée à mettre dans un module de l'éditeur VBA
S’utilise comme toute fonction selon la syntaxe =decoupage(cellule à traiter)
Cdlmnt
Via
Avec une fonction personnalisée à mettre dans un module de l'éditeur VBA
Function decoupage(plage As Range) r = Application.WorksheetFunction.Find("-", plage.Value) If IsNumeric(Mid(plage.Value, r - 2, 1)) Then a = Right(plage.Value, Len(plage.Value) - r - 1) Else a = Left(plage.Value, r - 2) decoupage = a End Function
S’utilise comme toute fonction selon la syntaxe =decoupage(cellule à traiter)
Cdlmnt
Via
ccm81
Messages postés
10904
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
24 décembre 2024
2 428
22 févr. 2019 à 15:36
22 févr. 2019 à 15:36
Bonjour à tous les deux
Peut être avec une petite macro
https://www.cjoint.com/c/IBwoKvcqNWB
Cdlmnt
Peut être avec une petite macro
https://www.cjoint.com/c/IBwoKvcqNWB
Cdlmnt
tiketeur
Messages postés
14
Date d'inscription
mercredi 6 novembre 2013
Statut
Membre
Dernière intervention
21 février 2023
22 févr. 2019 à 16:30
22 févr. 2019 à 16:30
Bonjour et merci,
lorsque j'utilise cette macro, j'ai un message d'erreur indiquant "l'indice n'appartient pas à la sélection"
lorsque j'utilise cette macro, j'ai un message d'erreur indiquant "l'indice n'appartient pas à la sélection"
ccm81
Messages postés
10904
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
24 décembre 2024
2 428
22 févr. 2019 à 18:38
22 févr. 2019 à 18:38
lorsque j'utilise cette macro, j'ai un message d'erreur indiquant "l'indice n'appartient pas à la sélection"
Avec mon fichier ou avec le tien ?
Avec mon fichier ou avec le tien ?
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
22 févr. 2019 à 16:23
22 févr. 2019 à 16:23
RE,
Toujours avec une formule en B1 à valider avec CTRL + SHIFT + ENTREE (A condition qu'il y ait au moins un chiffre dans le code)
=SI(ESTNUM(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));EQUIV(0;(ESTERREUR(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));LIGNE(INDIRECT("1:"&NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))));1)*1)*1);0);NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))-SOMME((ESTERREUR(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));LIGNE(INDIRECT("1:" & NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))));1)*1)*1)))*1);STXT(A1;TROUVE(" - ";A1;1)+3;10);GAUCHE(A1;TROUVE(" - ";A1;1)))
Cdlt
Toujours avec une formule en B1 à valider avec CTRL + SHIFT + ENTREE (A condition qu'il y ait au moins un chiffre dans le code)
=SI(ESTNUM(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));EQUIV(0;(ESTERREUR(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));LIGNE(INDIRECT("1:"&NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))));1)*1)*1);0);NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))-SOMME((ESTERREUR(STXT(GAUCHE(A1;TROUVE(" - ";A1;1));LIGNE(INDIRECT("1:" & NBCAR(GAUCHE(A1;TROUVE(" - ";A1;1)))));1)*1)*1)))*1);STXT(A1;TROUVE(" - ";A1;1)+3;10);GAUCHE(A1;TROUVE(" - ";A1;1)))
Cdlt
tiketeur
Messages postés
14
Date d'inscription
mercredi 6 novembre 2013
Statut
Membre
Dernière intervention
21 février 2023
22 févr. 2019 à 16:32
22 févr. 2019 à 16:32
Re Frenchie,
j'ai le message d'erreur suivant lorque j'applique ça : impossible d'entrer la formule spécifiée car elle utilise plus de niveaux d'imbrication que ne l'autorise le format de fichier actuel.
j'ai le message d'erreur suivant lorque j'applique ça : impossible d'entrer la formule spécifiée car elle utilise plus de niveaux d'imbrication que ne l'autorise le format de fichier actuel.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
22 févr. 2019 à 16:36
22 févr. 2019 à 16:36
Voici le fichier
https://mon-partage.fr/f/QFd44DgK/
https://mon-partage.fr/f/QFd44DgK/
tiketeur
Messages postés
14
Date d'inscription
mercredi 6 novembre 2013
Statut
Membre
Dernière intervention
21 février 2023
22 févr. 2019 à 17:33
22 févr. 2019 à 17:33
Merci beaucoup de ton aide Frenchie mais ça ne fonctionne pas...
J'ai réutilisé ton tableau avec quelques lignes de mon fichiers pour que tu puisses voir : https://mon-partage.fr/f/QA0HeQ2O/
J'ai réutilisé ton tableau avec quelques lignes de mon fichiers pour que tu puisses voir : https://mon-partage.fr/f/QA0HeQ2O/
via55
Messages postés
14504
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
21 décembre 2024
2 738
22 févr. 2019 à 18:44
22 févr. 2019 à 18:44
Tu ne dis rien sur ma fonction personnalisée qui fonctionne très bien
L'as tu seulement essayée ?
L'as tu seulement essayée ?
ccm81
Messages postés
10904
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
24 décembre 2024
2 428
22 févr. 2019 à 21:17
22 févr. 2019 à 21:17
Salut via55
un petit pb si la valeur à traiter est 02AAA - Marseille
j'ai eu la même idée (post #4), mais j'ai testé la présence d'un numérique dans toute la première demi-chaine
Bonne soirée
un petit pb si la valeur à traiter est 02AAA - Marseille
j'ai eu la même idée (post #4), mais j'ai testé la présence d'un numérique dans toute la première demi-chaine
Bonne soirée
via55
Messages postés
14504
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
21 décembre 2024
2 738
22 févr. 2019 à 22:50
22 févr. 2019 à 22:50
Bonsoir ccm
Tu as raison ! Donc faisable en testant en premier tous les caractères de la 1ere demi chaîne
Tu as raison ! Donc faisable en testant en premier tous les caractères de la 1ere demi chaîne
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
23 févr. 2019 à 06:38
23 févr. 2019 à 06:38
Bonjour,
Correctif à la formule (dans la précédente formule je pensais qu'il y avait un espace avant et après chaque tiret)
Nouvelle formule en B1 à valider aver CTRL + SHIFT + ENTREE et à tirer vers le bas:
=SI(ESTNUM(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);EQUIV(0;(ESTERREUR(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);LIGNE(INDIRECT("1:"&NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))));1)*1)*1);0);NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))-SOMME((ESTERREUR(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);LIGNE(INDIRECT("1:" & NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))));1)*1)*1)))*1);STXT(A1;TROUVE("-";A1;1)+1;30);GAUCHE(A1;TROUVE("-";A1;1)-1))
De plus, il faut activer le calcul itératif dans le paramétrage des options EXCEL,
-Cliquer sur le bouton OFFICE en haut à gauche
-Sélectionner Formules
-Dans le premier paragraphe "Mode de calcul", cocher Activer le calcul itéraif" et fixer le nombre maximal d'itérations à 1
Avec le fichier:
https://mon-partage.fr/f/XfbkVJH6/
Cdlt
Correctif à la formule (dans la précédente formule je pensais qu'il y avait un espace avant et après chaque tiret)
Nouvelle formule en B1 à valider aver CTRL + SHIFT + ENTREE et à tirer vers le bas:
=SI(ESTNUM(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);EQUIV(0;(ESTERREUR(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);LIGNE(INDIRECT("1:"&NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))));1)*1)*1);0);NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))-SOMME((ESTERREUR(STXT(GAUCHE(A1;TROUVE("-";A1;1)-1);LIGNE(INDIRECT("1:" & NBCAR(GAUCHE(A1;TROUVE("-";A1;1)-1))));1)*1)*1)))*1);STXT(A1;TROUVE("-";A1;1)+1;30);GAUCHE(A1;TROUVE("-";A1;1)-1))
De plus, il faut activer le calcul itératif dans le paramétrage des options EXCEL,
-Cliquer sur le bouton OFFICE en haut à gauche
-Sélectionner Formules
-Dans le premier paragraphe "Mode de calcul", cocher Activer le calcul itéraif" et fixer le nombre maximal d'itérations à 1
Avec le fichier:
https://mon-partage.fr/f/XfbkVJH6/
Cdlt
22 févr. 2019 à 14:20
j'avais oublié de préciser mais malheureusement, toutes les lettres (noms et les codes) sont en majuscules..