Bonjour,

Voici l'idée :

J'ai créé une sorte de base de données recensant plusieurs informations.

A partir de ces informations, j'ai réussi à générer automatiquement des feuilles avec les informations entrées comme ceci : (BDD et les feuilles créées en bas)



J'ai également réussi à générer un formulaire se générant automatiquement sur les feuilles créées comme ceci :




Cependant je n'arrive pas à attribuer automatiquement les valeurs contenues dans "Tableau Copro" dans les pages automatiquement générées dans les cases correspondants à F3 F4 F5

Voici le code VBA lié à la génération automatique des feuilles en fonction de la BDD :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Option Explicit
Dim maColonne As Integer
 
Sub AjoutFeuilles()
Dim derLi As Long
Dim i As Integer
Dim maFeuille As Worksheet
Set maFeuille = ActiveSheet
 
maColonne = 3 ' a ajuster
 
derLi = Columns(maColonne).Find("*", , , , , xlPrevious).Row
For i = 3 To derLi ' 2 si ligne de titre
  'Si la feuille existe déjà, on passe à la ligne suivante
  If FeuilleExiste(maFeuille.Cells(i, maColonne)) Then GoTo Suivant
  ' ajout d'une feuille à la fin
  Sheets.Add After:=Sheets(Worksheets.Count)
  ' nom de la feuille = valeur de la cellule
  Sheets(Worksheets.Count).Name = maFeuille.Cells(i, maColonne - 1) & "*" & maFeuille.Cells(i, maColonne) & "*" & maFeuille.Cells(i, maColonne + 1)
 
Suivant:
Next
'on retourne à la feuille d'origine
maFeuille.Select
Set maFeuille = Nothing
End Sub
Function FeuilleExiste(Nom$) As Boolean 'Ti
  On Error Resume Next
  FeuilleExiste = Sheets(Nom).Name <> ""
End Function
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = maColonne Then AjoutFeuilles
End Sub
J'espère que vous avez compris l'idée... J'ai essayé de le faire moi même mais cela n'a pas été fructueux, donc si quelqu'un a une idée de comment faire merci de bien vouloir m'aider.

Voici ce que j'avais en tête mais qui n'a pas marché... Rajouter dans le code ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
  Sheets(Worksheets.Count).Value = Range("F5").Value = maFeuille.Cells(i, maColonne - 1)
  Sheets(Worksheets.Count).Value = Range("F4").Value = maFeuille.Cells(i, maColonne)
  Sheets(Worksheets.Count).Value = Range("F3").Value = maFeuille.Cells(i, maColonne + 1)
Merci à vous.