Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
En utilisant une tite macro, cela donne ceci :
J'ai supposé que tes données sont sur la feuil1 (nom de la propriété de la feuille dans la fenêtre de l'éditeur de code et non le nom de l'onglet de la feuille) En colonne A1:Ax ayant une étiquette de colonne en A1 résultat vers B1:Bx de la même feuille
à toi d'adapter
'---------------------------------- Sub test() Dim C Application.ScreenUpdating = False Application.EnableEvents = False With Feuil1 derlig = .Range("A" & .Cells.Rows.Count).End(xlUp).Row With .Range("A1:A" & derlig) .AdvancedFilter xlFilterInPlace, , , True End With With .Range("_FilterDataBase") .Offset(1).Resize(.Rows.Count - 1). _ SpecialCells(xlCellTypeVisible).Copy _ Feuil1.Range("B1") End With .ShowAllData C = .Range("B1:B" & .Range("B" & .Cells.Rows.Count).End(xlUp).Row) Call tri(C) .Range("B1").Resize(UBound(C, 1)) = C End With Application.EnableEvents = True
End Sub '----------------------------------
Ceci tri par ordre croissant le résultat.... si tu as vraiment beaucoup de données -> il y a aussi Quick sort qui est plus rapide ... '---------------------------------- Function tri(List) ' Tri croissant Dim First As Integer, Last As Integer Dim i As Integer, j As Integer Dim Temp
First = LBound(List) Last = UBound(List) For i = First To Last - 1 For j = i + 1 To Last If List(i, 1) > List(j, 1) Then Temp = List(j, 1) List(j, 1) = List(i, 1) List(i, 1) = Temp End If Next j Next i End Function '----------------------------------
"alain chatellier" a écrit dans le message de news: Bonjour, Dans une colonne j'ai une liste de données alphanumériques avec des doublons.
En résultat je souhaite créer, avec une formule matricielle, une liste sans doublons.
Merci pour votre aide Cordialement
En utilisant une tite macro, cela donne ceci :
J'ai supposé que tes données sont sur la feuil1
(nom de la propriété de la feuille dans la fenêtre
de l'éditeur de code et non le nom de l'onglet de la feuille)
En colonne A1:Ax ayant une étiquette de colonne en A1
résultat vers B1:Bx de la même feuille
à toi d'adapter
'----------------------------------
Sub test()
Dim C
Application.ScreenUpdating = False
Application.EnableEvents = False
With Feuil1
derlig = .Range("A" & .Cells.Rows.Count).End(xlUp).Row
With .Range("A1:A" & derlig)
.AdvancedFilter xlFilterInPlace, , , True
End With
With .Range("_FilterDataBase")
.Offset(1).Resize(.Rows.Count - 1). _
SpecialCells(xlCellTypeVisible).Copy _
Feuil1.Range("B1")
End With
.ShowAllData
C = .Range("B1:B" & .Range("B" & .Cells.Rows.Count).End(xlUp).Row)
Call tri(C)
.Range("B1").Resize(UBound(C, 1)) = C
End With
Application.EnableEvents = True
End Sub
'----------------------------------
Ceci tri par ordre croissant le résultat.... si tu as vraiment beaucoup de
données -> il y a aussi Quick sort qui est plus rapide ...
'----------------------------------
Function tri(List)
' Tri croissant
Dim First As Integer, Last As Integer
Dim i As Integer, j As Integer
Dim Temp
First = LBound(List)
Last = UBound(List)
For i = First To Last - 1
For j = i + 1 To Last
If List(i, 1) > List(j, 1) Then
Temp = List(j, 1)
List(j, 1) = List(i, 1)
List(i, 1) = Temp
End If
Next j
Next i
End Function
'----------------------------------
"alain chatellier" <alainchatellier@discussions.microsoft.com> a écrit dans
le message de news: 0CAD4037-DE17-4D17-A72E-4120E3C0343E@microsoft.com...
Bonjour,
Dans une colonne j'ai une liste de données alphanumériques avec des
doublons.
En résultat je souhaite créer, avec une formule matricielle, une liste sans
doublons.
J'ai supposé que tes données sont sur la feuil1 (nom de la propriété de la feuille dans la fenêtre de l'éditeur de code et non le nom de l'onglet de la feuille) En colonne A1:Ax ayant une étiquette de colonne en A1 résultat vers B1:Bx de la même feuille
à toi d'adapter
'---------------------------------- Sub test() Dim C Application.ScreenUpdating = False Application.EnableEvents = False With Feuil1 derlig = .Range("A" & .Cells.Rows.Count).End(xlUp).Row With .Range("A1:A" & derlig) .AdvancedFilter xlFilterInPlace, , , True End With With .Range("_FilterDataBase") .Offset(1).Resize(.Rows.Count - 1). _ SpecialCells(xlCellTypeVisible).Copy _ Feuil1.Range("B1") End With .ShowAllData C = .Range("B1:B" & .Range("B" & .Cells.Rows.Count).End(xlUp).Row) Call tri(C) .Range("B1").Resize(UBound(C, 1)) = C End With Application.EnableEvents = True
End Sub '----------------------------------
Ceci tri par ordre croissant le résultat.... si tu as vraiment beaucoup de données -> il y a aussi Quick sort qui est plus rapide ... '---------------------------------- Function tri(List) ' Tri croissant Dim First As Integer, Last As Integer Dim i As Integer, j As Integer Dim Temp
First = LBound(List) Last = UBound(List) For i = First To Last - 1 For j = i + 1 To Last If List(i, 1) > List(j, 1) Then Temp = List(j, 1) List(j, 1) = List(i, 1) List(i, 1) = Temp End If Next j Next i End Function '----------------------------------
"alain chatellier" a écrit dans le message de news: Bonjour, Dans une colonne j'ai une liste de données alphanumériques avec des doublons.
En résultat je souhaite créer, avec une formule matricielle, une liste sans doublons.
Merci pour votre aide Cordialement
michdenis
Si tu as des difficultés avec cette procédure, les explications soit ici :
Trois hommes, qui après s'être mariés, et avoir eu des enfants, meurent de façon soudaine. Ils se retrouvent donc tous les 3 devant St Pierre qui leur dit : - Ici, comme le paradis est un immense endroit vous aurez une voiture pour vous déplacer. La marque de la voiture sera en fonction des fois où vous avez trompé vos femmes.
Donc St Pierre ouvre son grand livre et dit au premier homme : - Je vois que votre réputation de coureur de jupon est vérifiée. Je plains votre femme. Mais comme vous étiez gentil avec elle Dieu vous offre une Renault.
Penaud l'homme part en direction du paradis dans sa Renault.
Alors St Pierre regarde le deuxième homme et dit : - Vous êtes un peu mieux, vous avez trompé votre femme 2 fois seulement, Dieu vous offre une Mercedes.
L'homme heureux part en direction du paradis avec sa Mercedes.
Alors St Pierre regarde le dernier et dit : - Alors vous, vous êtes un saint, vous n'avez jamais trompé votre femme, pour vous féliciter Dieu vous accorde une Lamborghini.
L'homme heureux part tout fier dans sa voiture de rêve.
Le lendemain l'homme à la Renault rencontre l'homme à la Lamborghini, celui-ci pleurait comme un enfant sur le capot de sa voiture. L'homme à la Renault : - Voyons! Qu'est-ce qu'il se passe ? L'homme à la Lamborghini : - Je viens de voir passer ma femme en trottinette !!!
Si tu as des difficultés avec cette procédure, les
explications soit ici :
Trois hommes, qui après s'être mariés, et avoir eu des enfants, meurent de
façon soudaine.
Ils se retrouvent donc tous les 3 devant St Pierre qui leur dit :
- Ici, comme le paradis est un immense endroit vous aurez une voiture pour
vous déplacer. La marque
de la voiture sera en fonction des fois où vous avez trompé vos femmes.
Donc St Pierre ouvre son grand livre et dit au premier homme :
- Je vois que votre réputation de coureur de jupon est vérifiée. Je plains
votre femme. Mais comme
vous étiez gentil avec elle Dieu vous offre une Renault.
Penaud l'homme part en direction du paradis dans sa Renault.
Alors St Pierre regarde le deuxième homme et dit :
- Vous êtes un peu mieux, vous avez trompé votre femme 2 fois seulement,
Dieu vous offre une
Mercedes.
L'homme heureux part en direction du paradis avec sa Mercedes.
Alors St Pierre regarde le dernier et dit :
- Alors vous, vous êtes un saint, vous n'avez jamais trompé votre femme,
pour vous féliciter Dieu
vous accorde une Lamborghini.
L'homme heureux part tout fier dans sa voiture de rêve.
Le lendemain l'homme à la Renault rencontre l'homme à la Lamborghini,
celui-ci pleurait comme un
enfant sur le capot de sa voiture.
L'homme à la Renault :
- Voyons! Qu'est-ce qu'il se passe ?
L'homme à la Lamborghini :
- Je viens de voir passer ma femme en trottinette !!!
Si tu as des difficultés avec cette procédure, les explications soit ici :
Trois hommes, qui après s'être mariés, et avoir eu des enfants, meurent de façon soudaine. Ils se retrouvent donc tous les 3 devant St Pierre qui leur dit : - Ici, comme le paradis est un immense endroit vous aurez une voiture pour vous déplacer. La marque de la voiture sera en fonction des fois où vous avez trompé vos femmes.
Donc St Pierre ouvre son grand livre et dit au premier homme : - Je vois que votre réputation de coureur de jupon est vérifiée. Je plains votre femme. Mais comme vous étiez gentil avec elle Dieu vous offre une Renault.
Penaud l'homme part en direction du paradis dans sa Renault.
Alors St Pierre regarde le deuxième homme et dit : - Vous êtes un peu mieux, vous avez trompé votre femme 2 fois seulement, Dieu vous offre une Mercedes.
L'homme heureux part en direction du paradis avec sa Mercedes.
Alors St Pierre regarde le dernier et dit : - Alors vous, vous êtes un saint, vous n'avez jamais trompé votre femme, pour vous féliciter Dieu vous accorde une Lamborghini.
L'homme heureux part tout fier dans sa voiture de rêve.
Le lendemain l'homme à la Renault rencontre l'homme à la Lamborghini, celui-ci pleurait comme un enfant sur le capot de sa voiture. L'homme à la Renault : - Voyons! Qu'est-ce qu'il se passe ? L'homme à la Lamborghini : - Je viens de voir passer ma femme en trottinette !!!