Triage et listage de recettes par type

Bonsoir à tout le forum,

Je suis en train de réaliser une bibliothèques de recettes sur excel, chaque onglet comportant une fiche technique de recette. J'aimerai pouvoir faire une page d'accueil reprenant l'ensemble des noms de recettes triés par type par colonne.

Je pensais mettre dans la fiche technique de recette une cellule contenant le type de recette : entrée / plat / dessert. Comme ça l'information contenue dans la fiche pourra servir à trier en repérant cette chaine de caractère dans une cellule donnée (toujours la même). Le nom de la recette sera dans une autre cellule fixée. Mais malheureusement je ne sais pas du tout comment mettre en œuvre cette solution.

Exemple : une colonne ou ligne dessert avec toutes les recettes de dessert, une colonne ou ligne plat, etc.

Si on rajoute une recette dans une nouvelle feuille, il faudrait que cette recette s'ajoute automatiquement à la liste type. Idéalement, les recettes seraient triées par ordre alphabétique mais ce n'est pas du tout une priorité. Encore plus idéalement, les noms des recettes seraient des hyperliens qui pourraient amener à la recette concernée en cliquant dessus.

Pensez-vous que cela soit réalisable ? Un grand merci d'avance !

Bonne soirée.

Weib

Bonjour,

Une proposition à tester.

Créer les nouvelles feuilles à la suite des existantes

Actualisation de la liste des onglets : Macro feuille liste

Private Sub Worksheet_Activate()

Dim i As Integer

Range("c3:c100").ClearContents

Range("c3").Select

For i = 1 To Sheets.Count

ActiveCell.Value = Sheets(i).Name

ActiveCell.Offset(1, 0).Select

Next i

End Sub

Actualisation de la liste des plats : Macro feuille Accueil

Private Sub Worksheet_Activate()

ActiveWorkbook.Connections("Requête - Tableau4").Refresh

End Sub

Choix d'un plat colonne Onglets : Macro feuille Accueil

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Application.Intersect(Target, Range("TListePlats[Onglets]")) Is Nothing Then

Application.Goto Sheets("" & Target.Value).Range("A1")

End If

End Sub

Copier coller le bouton "Retour menu" dans les fiches plats : Macro dans le Module 1

Sub RetourMenu()

Sheets("accueil").Select

End Sub

Deux macros d'actualisation en cas de besoin dans le Module 1

Sub Actualisation_Menu()

Range("_Menu").Select

Selection.FormulaArray = "=TRANSPOSE(NomOnglet)"

Range("J15").Select

End Sub

Sub ActualiseListe()

Dim i As Integer

Feuil1.Activate

Range("b3:b100").ClearContents

Range("B3").Select

For i = 1 To Sheets.Count

ActiveCell.Value = Sheets(i).Name

ActiveCell.Offset(1, 0).Select

Next i

Feuil1.Activate

End Sub

Cordialement.

Bonjour

Il y a un sujet très similaire auquel j'avais répondu avec ce fichier démo

demo recettes5

Avec recette, menu de la semaine, liste de course en fct du nb de personnes

Et avec tri par type de recette, par titre, filtre par ingrédient, ...

https://forum.excel-pratique.com/excel/planning-repas-et-liste-de-courses-152427#p941625

Pierre

Bonjour Zebulon2, merci beaucoup pour ta réponse.

Ta solution est parfaite, c'est ce que je cherchais. Néanmoins lorsqu'une recette est ajoutée dans une nouvelle feuille elle ne s'ajoute pas au listage du menu. Mauvaise manip de ma part ? Cf fichier en PJ.

Bonjour Pierre, je regarde actuellement le fichier que tu m'as envoyé et il est très complet. Je ne pense pas aboutir à un fichier si complexe mais quelques idées sont très intéressantes je vais essayer de l'adapter à mon projet. Merci beaucoup pour ton aide !

Pour Zebulon2, je rectifie : l'actualisation se fait quand on va d'abord dans la feuille liste puis dans la feuille accueil. Y'a t-il possibilité d'automatiser ça sans passer par la feuille liste pour l'actualiser ? Par le bouton retour menu par exemple ?

Re,

Une version modifiée en conséquence.

Cordialement.

Parfait c'est tout à fait ce qu'il me faut. Petite question : ou peut-on modifier la cellule contenant l'information "type" (entrée, plat, dessert) ? Actuellement quand le tableau de la feuille liste rajoute des lignes, elle se réfère à la cellule C4.

On modifie ça au niveau VBA ou sur le tableau ? Je n'arrive pas à trouver le truc.

Re,

Sur le tableau, formule : =INDIRECT("'"&[@Onglets]&"'!C4")

Il faut donc toujours mettre le type de plat au même endroit.

Cordialement.

Bonjour

Il y a un sujet très similaire auquel j'avais répondu avec ce fichier démo

demo recettes5

Avec recette, menu de la semaine, liste de course en fct du nb de personnes

Et avec tri par type de recette, par titre, filtre par ingrédient, ...

https://forum.excel-pratique.com/excel/planning-repas-et-liste-de-courses-152427#p941625

Pierre

@pierrep56,

Bonsoir,

Je viens de tester ton fichier, très intéressant. Est ce qu'il y a une moulinette permettant de transformer un fichier word existant en fichier .ttk ?

En tous cas, joli travail.

Bonne soirée.

Cordialement.

Même quand je modifie toutes les formules du tableau en mettant ma cellule (E1) quand une feuille se rajoute et donc un nouveau type de plat, la formule prend en compte la cellule C4 dans la formule...

Peux tu mettre ton fichier ?

Cordialement

re,

Une version améliorée.

Cordialement.

@pierrep56,

Bonsoir,

Je viens de tester ton fichier, très intéressant. Est ce qu'il y a une moulinette permettant de transformer un fichier word existant en fichier .ttk ?

En tous cas, joli travail.

Bonne soirée.

Cordialement.

Bonjour Zebulon,

Le fichier ttk est un simple fichier texte, genre csv avec point-virgule. Simple à produire!

Pierre

Bonjour,

Ok, c'est noté.

Bonne journée.

Rechercher des sujets similaires à "triage listage recettes type"