[EXCEL] Tri de données
sylvain1222
Messages postés
18
Statut
Membre
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Salut
voila mon probleme sous EXCEL:
j'ai 2 colonnes de ce type:
Aaa 1
Bbb 1
Ccc 0
Ddd 3
Eee 0
Fff 0
Ggg 2
et j'aimerais pouvoir écrire dans UNE autre case de la feuille de calcul les noms de la premiere colonne qui possède un numero superieur à 0 soit ici:
"Aaa Bbb Ccc Ddd"
je ne vois pas trop comment faire (filtres, macro, ou encore plus simples)
PS:je suis debutant
merci d'avance
++
Salut
voila mon probleme sous EXCEL:
j'ai 2 colonnes de ce type:
Aaa 1
Bbb 1
Ccc 0
Ddd 3
Eee 0
Fff 0
Ggg 2
et j'aimerais pouvoir écrire dans UNE autre case de la feuille de calcul les noms de la premiere colonne qui possède un numero superieur à 0 soit ici:
"Aaa Bbb Ccc Ddd"
je ne vois pas trop comment faire (filtres, macro, ou encore plus simples)
PS:je suis debutant
merci d'avance
++
A voir également:
- [EXCEL] Tri de données
- Comment faire un tri personnalisé sur excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Logiciel tri photo - Guide
7 réponses
Salut,
Tes explications ne sont pas très claire, en supposant que tes données sont en colonne A et commencent en A1, tu peux écrire une formule toute simple de ce style
=A1&" "&A2&" "&A3&" "&A4
ou avec la fonction Concatener
=CONCATENER(A1;" ";A2;" ";A3; A4)
Par contre si en colonne A, tes saisies resemblent à ça "Bbb 1", il faudra passer par la fonction convertir pour isoler l'intervalle et le numéro, pour éviter de concanener une cellule contenant 0 tu devras poser une contitionnelle
=SI(A1>0;A1&" "&SI(A2>0;A2&" "&SI(A3>0;A3&" "&SI(A4>0;A4))))
Mais bien d'autres possibilités encore
A+
Tes explications ne sont pas très claire, en supposant que tes données sont en colonne A et commencent en A1, tu peux écrire une formule toute simple de ce style
=A1&" "&A2&" "&A3&" "&A4
ou avec la fonction Concatener
=CONCATENER(A1;" ";A2;" ";A3; A4)
Par contre si en colonne A, tes saisies resemblent à ça "Bbb 1", il faudra passer par la fonction convertir pour isoler l'intervalle et le numéro, pour éviter de concanener une cellule contenant 0 tu devras poser une contitionnelle
=SI(A1>0;A1&" "&SI(A2>0;A2&" "&SI(A3>0;A3&" "&SI(A4>0;A4))))
Mais bien d'autres possibilités encore
A+
merci de ta réponse je vais essayer d'etre un peu plus clair:
en fait les mots et les numeros sont biens dans 2 colonnes séparées :
A 1
B 2
C 0
D 4
E 0
F 1
(ces lettres et les chifres sont bien le contenu des cellules des 2 colonnes)
mais le problème de la première solution que tu me propose avec la concaténation est que c'est manuel, moi je voudrais que ça le fasse automatiquement en fonction des chiffres correspondant dans la deuxieme colonne (=0 ou <>0) c'est à dire que dans le cas au dessus ça m'afficherai "ABDF" mais si je change les numeros correspondant a chaque lettre je voudrais que ça change automatiquement le resultat
en fait les mots et les numeros sont biens dans 2 colonnes séparées :
A 1
B 2
C 0
D 4
E 0
F 1
(ces lettres et les chifres sont bien le contenu des cellules des 2 colonnes)
mais le problème de la première solution que tu me propose avec la concaténation est que c'est manuel, moi je voudrais que ça le fasse automatiquement en fonction des chiffres correspondant dans la deuxieme colonne (=0 ou <>0) c'est à dire que dans le cas au dessus ça m'afficherai "ABDF" mais si je change les numeros correspondant a chaque lettre je voudrais que ça change automatiquement le resultat
ah ouais en fait ta deuxieme solution marcherait peut etre je vais essayer (sauf que jai 40 ligne :-p ^^)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
smartway, j'ai essayé de bidouillé avec ta formule mais sans résultat (je sais pas si ça vient de moi ou de la formule...)
Bonjour,
tu n'y arriveras pas sans vba.
A coller dans un module :
ex:
=ConcatSi(A2:A8;B2:B8;"-")
A2:A8 : tes chaines
B2:B8 : tes valeurs
"-" : le séparateur choisi
Avec 'insérer / fonction' tu peux choisir tes plages à la souris.
Il n'y a aucun contrôle, il faut que les plages aient la même taille
eric
tu n'y arriveras pas sans vba.
A coller dans un module :
Function ConcatSi(chaines As Range, valeurs As Range, séparateur As String)
Dim i As Long
For i = 1 To valeurs.Cells.Count
If valeurs(i) > 0 Then rep = rep & séparateur & chaines(i)
Next i
ConcatSi = Mid(rep, Len(séparateur) + 1)
End Function
ex:
=ConcatSi(A2:A8;B2:B8;"-")
A2:A8 : tes chaines
B2:B8 : tes valeurs
"-" : le séparateur choisi
Avec 'insérer / fonction' tu peux choisir tes plages à la souris.
Il n'y a aucun contrôle, il faut que les plages aient la même taille
eric