• Initiateur de la discussion Initiateur de la discussion YOYO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Y

YOYO

Guest
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
 
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
402
  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
642
  • Question Question
XL 2021 listbox
Réponses
18
Affichages
736
Retour