Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[XL2010] Extraire du texte de plusieurs onglets pour créer une liste

1 réponse
Avatar
Tif33
Bonjour,

Tout d'abord je précise que je ne connais rien en macro mais que j'ai vraiment essayé, notamment au travers des discussions suivantes, de trouver une réponse à ma question (sans succès...):
http://www.commentcamarche.net/forum/affich-20165071-excel-extraire-donnee-de-plusieurs-feuille
http://www.generation-nt.com/reponses/macro-pour-recuperer-des-donnees-sur-plusieurs-feuilles-entraide-899421.html

Donc après 2h30 à tourner en rond j'en fais appel à votre solidarité lol
J'ai mis un fichier simplifié sur cjoint pour essayer que vous visualisiez bien le problème : http://www.cjoint.com/c/EIDru7xYC5l

J'ai donc un classeur contenant une centaine d'onglets.
Les 3 premiers onglets ne m'intéressent pas, mais je souhaite extraire le texte contenu dans la plage A9:A25 du 4ème jusqu'au dernier onglet.

Je voudrais ainsi obtenir une liste qui compile l'ensemble des noms (si possible sans doublon) entrés en A9:A25.

Si l'un d'entre vous pouvait m'aider, ce serait vraiment cool.
Merci par avance

1 réponse

Avatar
isabelle
bonjour,

j'ai mis les résultats (30) sur "Feuil1"

http://www.cjoint.com/c/EIDtogrb7Aa

Sub ListeRecette()
'necessite une référence à la bibliotheque "Microsoft Scripting Runtime"
Dim Dico As New Scripting.Dictionary
Dim sh As Worksheet
For Each sh In Worksheets
If sh.Name <> "Feuil1" Or sh.Name <> "Feuil2" Or sh.Name <> "Feuil3" Then
For i = 9 To 25
valeur = Sheets(sh.Name).Range("A" & i)
If valeur <> "" Then
If Not Dico.Exists(valeur) Then
Cle = Cle + 1
'ajout de la Cle et Valeur dans le Dictionnaire
Dico.Add Cle, valeur
End If
End If
Next
End If
Next
Sheets("Feuil1").Range("A1").Resize(Dico.Count, 1) =
Application.Transpose(Dico.Keys)
Sheets("Feuil1").Range("B1").Resize(Dico.Count, 1) =
Application.Transpose(Dico.Items)
Set Dico = Nothing
End Sub

isabelle

Le 2015-09-29 13:31, Tif33 a écrit :
Bonjour,

Tout d'abord je précise que je ne connais rien en macro mais que j'ai vraiment
essayé, notamment au travers des discussions suivantes, de trouver une réponse à
ma question (sans succès...):
http://www.commentcamarche.net/forum/affich-20165071-excel-extraire-donnee-de-plusieurs-feuille
http://www.generation-nt.com/reponses/macro-pour-recuperer-des-donnees-sur-plusieurs-feuilles-entraide-899421.html

Donc après 2h30 à tourner en rond j'en fais appel à votre solidarité lol
J'ai mis un fichier simplifié sur cjoint pour essayer que vous visualisiez bien
le problème : http://www.cjoint.com/c/EIDru7xYC5l

J'ai donc un classeur contenant une centaine d'onglets.
Les 3 premiers onglets ne m'intéressent pas, mais je souhaite extraire le texte
contenu dans la plage A9:A25 du 4ème jusqu'au dernier onglet.

Je voudrais ainsi obtenir une liste qui compile l'ensemble des noms (si possible
sans doublon) entrés en A9:A25.

Si l'un d'entre vous pouvait m'aider, ce serait vraiment cool.
Merci par avance