Liste d'articles

YOYO

XLDnaute Nouveau
Bonjour,

voila mon probleme...
J'ai dans un fichier excel qui contient un nombre variable de feuilles (1 à 10 suivant le fichier), chaque feuille contenant des références d'articles (toujours dans la même colonne).

Je souhaite créer une nouvelle feuille au début de mon fichier excel contenant la liste sans doublons de tous les articles contenus dans les feuilles existantes.

Merci pour votre aide.

YOYO
 

Hervé

XLDnaute Barbatruc
re yoyo

sinon vite faite :

Ce type de code crée une feuille Bilan en début de classeur, scanne toutes les feuilles (sauf bilan) crée une collection des valeurs de la colonne A (de chaque feuille).

Puis renvoi cette collection en colonne A de la célèbre feuille Bilan.

Bien sur, si la feuille Bilan existe déjà un message te préviens et la macro s'arrete.

salut

Option Explicit
Sub Bouton1_QuandClic()
Dim ws As Worksheet, feuille As Worksheet
Dim data As Collection
Dim i As Integer
Dim c As Range

Set data = New Collection

Set feuille = Sheets.Add

On Error GoTo fin:
With feuille
    .Name = 'Bilan'
    .Move before:=Sheets(1)
End With

For Each ws In Worksheets
   
If ws.Name <> feuille.Name Then
&nbsp; &nbsp; &nbsp; &nbsp;
With ws
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
For Each c In .Range('a1:a' & .Range('a65536').End(xlUp).Row)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
On Error Resume Next
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; data.Add CStr(c), CStr(c)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
On Error GoTo 0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Next c
&nbsp; &nbsp; &nbsp; &nbsp;
End With
&nbsp; &nbsp;
End If
Next ws

With feuille
&nbsp; &nbsp;
For i = 1 To data.Count
&nbsp; &nbsp; &nbsp; &nbsp; .Cells(i, 1) = data(i)
&nbsp; &nbsp;
Next i
End With
Exit Sub

fin:
MsgBox 'la feuille Bilan existe déjà.'
With Application
&nbsp; &nbsp; .DisplayAlerts =
False
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Delete
&nbsp; &nbsp; .DisplayAlerts =
True
End With

End Sub
 

Statistiques des forums

Discussions
312 922
Messages
2 093 644
Membres
105 774
dernier inscrit
Tibenjah