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
| Dim texte As TextBox
Dim etiquette As label
Dim i As Integer
Set db = CurrentDb
Dim Table As DAO.TableDef
Dim Champ As DAO.Field
Set Table = db.TableDefs("table_jour")
i = 0
'Liste les champs
Me.table_jour_Sous_formulaire2.SourceObject = "" 'on ferme le sous-formulaire
DoCmd.OpenForm "table_jour_Sous_formulaire2", acDesign, , , , acHidden 'on le rouvre en mode création et caché
For Each Champ In Table.Fields
If i > 5 Then
Set texte = CreateControl("table_jour_Sous_formulaire2", acTextBox, acDetail, "", Champ.Name, ((i * 800) + 500), 50, 800, 300) 'on trace la zone de texte
texte.Name = "Txt_" & Champ.Name
Set etiquette = CreateControl("table_jour_Sous_formulaire2", acLabel, acHeader, "", Champ.Name, ((i * 800) + 500), 50, 800, 300) 'on trace le label
etiquette.Name = "Lbl_" & Champ.Name
Set texte = Nothing 'on libère la mémoire
Set etiquette = Nothing
End If
i = i + 1
Next Champ
DoCmd.Close acForm, "table_jour_Sous_formulaire2" 'on ferme le formulaire
Me.table_jour_Sous_formulaire2.SourceObject = "table_jour_Sous_formulaire2" 'on rouvre le sous-formulaire dans le formulaire principal
Set Table = Nothing
Set Champ = Nothing |
Partager