XL 2010 Faire un sommaire à partir de plusieurs feuilles

Mayday

XLDnaute Nouveau
Bonjour à Tous,
Mes connaissances d'excel sont limitées. J'ai pu faire des comptes simples à partir de plusieurs feuilles (13) en faisant des liens entre elles, mais en faisant tout manuellement (cellule par cellule). J'ai découvert qu'il y avait des macros qui pouvaient "automatiser" ce travail.
Aujourd'hui j'ai voulu faire un classeur de compte-rendus de lecture pour mon fils. Ne connaissant strictement rien à access (qui est peut-être la solution) je suis passé par excel.
Une feuille type (avec des menus déroulants) reproduite une centaine de fois (macro trouvée sur le net), un sommaire afin d'aller rapidement sur une feuille (nouvelle macro trouvée). J'aimerai pouvoir faire un sommaire dans une nouvelle feuille qui reprenne : nom de l'auteur, titre, genre, sous genre, style littéraire. Cela permettrait de filtrer les lectures en fonction du genre, du style...
J'ai essayé avec ce que je connais mais cela ne s'applique qu'à une feuille ou ça ne marche pas par ligne. J'ai regardé les tutos avec recherchev, tableaux croisés... même résultat. J'ai essayé de faire le sommaire dans la feuille table des matières afin de me servir des emplacements de chaque feuille mais...
y-a-t-il une solution (j'ai remarqué que j'ai fait la fiche type en ligne et non en colonne ce qui m'a posé problème dans certains cas) ? Ou faut-il que je recommence avec un autre logiciel ?
Merci par avance pour vos réponses.
Mayday
 

Pièces jointes

  • Fiches de lecture.xlsm
    320.1 KB · Affichages: 12
Solution
les macros que j'ai créées sont dans le module 5
j'ai regroupé toutes les autres que tu as faites dans le module1

une fois que le sommaire a été créé, si tu changes le nom de la fiche, il faut relancer la macro de création du sommaire

plutot que créér en avance 15 fiches vides que tu renommes ensuite,
j'ai créé une fiche vierge qui sert de modèle pour chaque nouvelle fiche
j'ai donc aussi créé une macro qui créé une nouvelle fiche
cette macro demande le nom de la fiche, puis créé la fiche, et place le titre
la mise à jour du sommaire est également lancée

pour trier.. il suffit de cliquer dans le tableau "Tab_Sommaire", puis faire Données - Trier - Genre

à noter.. je ne vois pas bien l'utilité de la feuille "Table Matière"...

vgendron

XLDnaute Barbatruc
Hello

un exemple par macro
VB:
Sub Sommairefiches()

Application.ScreenUpdating = False

With Sheets("Sommaire")
   ' il faudrait commencer par effacer le sommaire
    For Each ws In ActiveWorkbook.Sheets 'pour chaque feuille du classeur
        If ws.Name <> "Table Matière" And ws.Name <> "Sommaire" And ws.Name <> "Outils" Then
            .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0) = ws.Name 'on colle le nom en colonne A
        End If
    Next ws
    Fin = .Range("A" & .Rows.Count).End(xlUp).Row 'dernière ligne de la feuille
    'on colle des formules pour récuperer les infos dans les feuilles
    .Range("B" & 5).Formula = "=INDIRECT(""'"" &A5 &""'!B4"")"
    .Range("C" & 5).Formula = "=INDIRECT(""'"" &A5 &""'!B8"")"
    .Range("D" & 5).Formula = "=INDIRECT(""'"" &A5 &""'!B9"")"
    .Range("E" & 5).Formula = "=INDIRECT(""'"" &A5 &""'!B10"")"
    .Range("B5:E5").AutoFill Destination:=.Range("B5:E5").Resize(Fin - 5) 'on tire les formules jusqu'en bas
End With
Application.ScreenUpdating = True
End Sub
 

vgendron

XLDnaute Barbatruc
une autre version avec un tableau structuré avec ligne d'entete
vidage du tableau en début de macro
dans le code de la feuille Sommaire (_selectionchange) un code pour basculer sur la fiche de lecture selectionnée
 

Pièces jointes

  • Fiches de lecture (1).xlsm
    311.1 KB · Affichages: 7

Mayday

XLDnaute Nouveau
Bonjour Vincent,
Un grand merci.
La première macro ne change pas le nom du fichier lorsque l'on change le nom de la feuille. Je me suis rendu compte que la table des matières ne le faisait pas non plus.
Par contre votre deuxième fichier : chapeau bas. Comment avez-vous fait ? Je ne vois pas de macro apparaitre dans le dossier des macros ?
Autre demande : si on veut trier par genre (par exemple). On enregistre la feuille ailleurs et on fait le tri en dehors de ce classeur ?
Si ce n'est pas possible, pas de souci, ne perdez pas votre temps pour cela.
Que me conseillez-vous pour apprendre à faire des macros ?
Merci encore
 

vgendron

XLDnaute Barbatruc
les macros que j'ai créées sont dans le module 5
j'ai regroupé toutes les autres que tu as faites dans le module1

une fois que le sommaire a été créé, si tu changes le nom de la fiche, il faut relancer la macro de création du sommaire

plutot que créér en avance 15 fiches vides que tu renommes ensuite,
j'ai créé une fiche vierge qui sert de modèle pour chaque nouvelle fiche
j'ai donc aussi créé une macro qui créé une nouvelle fiche
cette macro demande le nom de la fiche, puis créé la fiche, et place le titre
la mise à jour du sommaire est également lancée

pour trier.. il suffit de cliquer dans le tableau "Tab_Sommaire", puis faire Données - Trier - Genre

à noter.. je ne vois pas bien l'utilité de la feuille "Table Matière"...?

pour apprendre le VBA..j'ai utilisé la méthode suivante:
google est mon ami, et ce forum.
 

Pièces jointes

  • Fiches de lecture (1).xlsm
    63.4 KB · Affichages: 26

Mayday

XLDnaute Nouveau
La table des matières avait pour but de cliquer sur la fiche voulue plutôt que de faire défiler toutes les fiches. Maintenant elle ne sert plus à rien, je vais donc la supprimer.
Je vais maintenant "googliser". Les macros donnent une autre dimension à excel.
Une nouvelle fois Merci.
Je ne peux pas dire à charge de revanche car je pars de trop loin pour pouvoir un jour te dépanner.
 

Discussions similaires