OVH Cloud OVH Cloud

Do While...

3 réponses
Avatar
Sabian
Salut...
Sur une feuille, j'ai une liste de noms en colonne A. Ces=20
noms peuvent se r=E9peter plusieurs fois...
ADA
ADA
ADA
BAA
BAA
EDT
FOP
FOP
...etc...
Maintenant j'aimerai qu'=E0 chaque changement de nom, il=20
aille se place sur une autre feuille et qu'il m'inscrive=20
autant de noms diff=E9rents que j'ai sur ma Feuil1
ADA
BAA
EDT
FOP

J'ai pens=E9 =E0 un truc du style Do While, mais je ne m'en=20
sors pas...=20

Quelqu'un pourrait m'aider...

Merci
St=E9phan

3 réponses

Avatar
papou
Bonjour Sabian
Tu n'as pas besoin de VBA pour ça :
Données, Filtre, Filtre élaboré, Copier vers un autre emplacement et cocher
Extraction sans doublons
Cordialement
Pascal

"Sabian" a écrit dans le message de
news:05f601c3b265$ed25bbe0$
Salut...
Sur une feuille, j'ai une liste de noms en colonne A. Ces
noms peuvent se répeter plusieurs fois...
ADA
ADA
ADA
BAA
BAA
EDT
FOP
FOP
...etc...
Maintenant j'aimerai qu'à chaque changement de nom, il
aille se place sur une autre feuille et qu'il m'inscrive
autant de noms différents que j'ai sur ma Feuil1
ADA
BAA
EDT
FOP

J'ai pensé à un truc du style Do While, mais je ne m'en
sors pas...

Quelqu'un pourrait m'aider...

Merci
Stéphan
Avatar
papou
Si tu veux vraiment le faire en VBA, va voir ici :
http://www.excelabo.net/xl/comparer.php#valeursuniques
Cordialement
Pascal

"papou" <nspm> a écrit dans le message de
news:%
Bonjour Sabian
Tu n'as pas besoin de VBA pour ça :
Données, Filtre, Filtre élaboré, Copier vers un autre emplacement et
cocher

Extraction sans doublons
Cordialement
Pascal

"Sabian" a écrit dans le message de
news:05f601c3b265$ed25bbe0$
Salut...
Sur une feuille, j'ai une liste de noms en colonne A. Ces
noms peuvent se répeter plusieurs fois...
ADA
ADA
ADA
BAA
BAA
EDT
FOP
FOP
...etc...
Maintenant j'aimerai qu'à chaque changement de nom, il
aille se place sur une autre feuille et qu'il m'inscrive
autant de noms différents que j'ai sur ma Feuil1
ADA
BAA
EDT
FOP

J'ai pensé à un truc du style Do While, mais je ne m'en
sors pas...

Quelqu'un pourrait m'aider...

Merci
Stéphan




Avatar
Denis Michon
Bonjour Sabian,

Voici un petit exemple avec Do While...

Tu n'as qu'à déterminer la feuille où sont les données et la plage de cellules où sont tes données. Une nouvelle feuille
sera créée à chaque nouvelle série de données.

'-------------------------------
Sub CopieAilleurs()

Dim Rg As Range, A As Long, B As Long, C As Long
Dim MaFeuille As String
MaFeuille = ActiveSheet.Name

With Worksheets("Feuil1") 'A déterminer
Set Rg = .Range("B5:B" & .Range("b65536").End(xlUp).Row)
End With

A = 1: B = 1: C = 1
Do While A <= Rg.Rows.Count
If Rg(B) = Rg(B + 1) Then
C = C + 1
B = B + 1
Else
Worksheets.Add after:=Sheets(Sheets.Count)
Rg(A).Resize(C).Copy ActiveSheet.Range("A1")
A = B + 1: B = B + 1: C = 1
End If
Loop
Sheets(MaFeuille).Activate
Set Rg = Nothing

End Sub
'-------------------------------


Salutations!



"Sabian" a écrit dans le message de news:05f601c3b265$ed25bbe0$
Salut...
Sur une feuille, j'ai une liste de noms en colonne A. Ces
noms peuvent se répeter plusieurs fois...
ADA
ADA
ADA
BAA
BAA
EDT
FOP
FOP
...etc...
Maintenant j'aimerai qu'à chaque changement de nom, il
aille se place sur une autre feuille et qu'il m'inscrive
autant de noms différents que j'ai sur ma Feuil1
ADA
BAA
EDT
FOP

J'ai pensé à un truc du style Do While, mais je ne m'en
sors pas...

Quelqu'un pourrait m'aider...

Merci
Stéphan