Création feuille pour chaque catégorie

Bonjour,

J'aimerais savoir si ça serait possible de créer des feuilles comportant des formulaires par catégorie ET procédure spécifique.

Chaque formulaire aurait les descriptions, procédures, documentation,..., sauf la colonne catégorie. Et dans lequel

on retrouverait un endroit pour appposer une signature de l'employé et du superviseur.

J'ai mis en pièce jointe un exemple de données dont je dispose et d'exemples dont je souhaite avoir.

Merci!

Cordialement.

Bonjour,

Une proposition avec macro

La macro se déclenche automatiquement quand un onglet est sélectionné (sauf Data et sauf FeuilXXX = ce qui permet de mettre en place les nouvelles feuilles, la macro se déclenchera quand un nom lui sera attribué et au premier passage suivant).

Elle utilise les filtres avancés.

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name <> "Data" And Left(Sh.Name, 5) <> "Feuil" Then
        Sh.Range("A8").CurrentRegion.Offset(1, 0).Clear
        Sheets("data").Cells(Rows.Count, 1).End(xlUp).CurrentRegion.AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Sh.Range("A4").CurrentRegion, CopyToRange:=Sh.Range("A8").CurrentRegion.Resize(1), Unique:=False
    End If
End Sub

Bonjour Steelson,

En fait merci tout d'abord de prendre le temps de t'attarder à mon problème.

Je voudrais savoir...Il y aurait-il une façon de lancer une macro par exemple qui déterminerait les combinaisons uniques des Catégories et Procédures et effectuera la création des diverses feuilles avec le format associé?

J'ai testé la macro proposée et elle nécessite la création/l'attribution des noms et j'aimerais éviter cela.

Cordialement,

Misen

ok, je vais automatiser la création des feuilles.

En complément ... à partir d'une feuille Modèle cachée.

Sub creation_feuilles()

Dim dico As Object
Set dico = CreateObject("Scripting.Dictionary")
Sheets("Modèle").Visible = True

Application.DisplayAlerts = False
For Each Sh In Worksheets
    If Sh.Name <> "Menu" And Sh.Name <> "Data" And Sh.Name <> "Modèle" Then Sh.Delete
Next
Application.DisplayAlerts = True

With Sheets("Data")
    For i = 2 To .[D2].End(xlDown).Row
        dico(.Cells(i, "D") & "-" & .Cells(i, "E")) = ""
    Next
End With

For Each cle In dico.Keys
    Sheets.Add After:=Worksheets(Worksheets.Count())
    Sheets("Modèle").Cells.Copy
    ActiveSheet.Paste
    ActiveSheet.Name = cle
    Range("B1") = cle
Next
Application.CutCopyMode = False
Sheets("Modèle").Visible = False
Sheets("Data").Select

End Sub

Merci Steelson! C'est exactement ce que je recherchais!

Rebonsoir,

En fait j'aurais une dernière petite question à ce sujet.

Si jamais je voudrais effacer entièrement les lignes 3 à 7 des feuilles créées, ne devrait-je pas seulement rajouter:

For Each Sh In Worksheets
    If Sh.Name <> "Menu" And Sh.Name <> "Data" And Sh.Name <> "Modèle" Then
        Sh.Rows("3:7").EntireRow.Delete
    End If
Next

?

Cordialement.

Holà !

Surtout ne pas les supprimer ... ces lignes servent à la macro de filtrage événementielle dans les critères, à, savoir CriteriaRange:=Sh.Range("A4").CurrentRegion

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name <> "Menu" And Sh.Name <> "Data" And Sh.Name <> "Modèle" And Left(Sh.Name, 5) <> "Feuil" Then
        Sh.Range("A8").CurrentRegion.Offset(1, 0).Clear
        Sheets("data").Cells(Rows.Count, 1).End(xlUp).CurrentRegion.AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Sh.Range("A4").CurrentRegion, CopyToRange:=Sh.Range("A8").CurrentRegion.Resize(1), Unique:=False
    End If
End Sub

Pourquoi voudrais-tu les supprimer ? elles sont de toute façon masquées !

Resalut,

Les formulaires sont utilisés avec un autre logiciel (Access je pense) et ont toujours eu la même structure.

Je pensais que ces lignes, même masquées, causeraient un problème au niveau de la compabilité;

Cordialement.

Access est un logiciel de base de données, je suis curieux de savoir comment ces fiches permettent d'alimenter Access, ce serait plutôt la base elle-même.

Fais le test de mise en oeuvre et dis moi ensuite s'il faut vraiment faire quelque chose, car cela change fondamentalement la façon de programmer. Jusque maintenant, la création des feuilles ne faisaient rien d'autres que de dupliquer le modèle, c'est ensuite l'activation des feuilles qui les renseigne.

Bon matin,

Je comprends, les indications que l'on ma donné était de respecter la structure et d'y porter une importance, puisque cela allait feed un programme qui est déjà utilisé avec un autre Excel de ce format.

Si tu veux, je m'y re-mettrais alors demain matin /././

Avant d'aller plus loin ... est-ce que ceci pourrait te convenir ?

L'avantage est que si tu ajoutes des lignes de données, elles seront reportées dans l'onglet ad-hoc lors de l'activation de cet onglet.

j'ai mis en H1:J3 les valeurs de filtre de façon masquées

Bonjour!

C'est plus que parfait comme cela.

Merci beaucoup pour ton aide Steelson!

Bon week-end à toi.

Cordialement.

In fine, dernière version ...

In fine, dernière version ...Formulaires_test_final.xlsm

Woah! C'est plus que parfait! Merci infiniment Steelson!!

Rechercher des sujets similaires à "creation feuille chaque categorie"