|
Les structures de contrôles sont utilisées pour contrôler
l'écoulement du processus dans le code VBA.
Il faut se familiariser avec ces contrôles car tous ont des
qualités communes mais sont tous différents. Certains peuvent être remplacés par
d'autres selon la complexité du processus.
Les contrôles pourront s'imbriquer les uns aux autres et
chaque contrôle aura sa fin de contrôle. Ce qui veut dire qu'il va falloir
structurer ces contrôles.
Pour bien structurer le code, il faut qu'il soit lisible
naturellement et que chaque structure de contrôle soit situé au même niveau
vertical. Il faut indenter le code.
L'indentation du code VBA consiste à introduire des
tabulations en début de ligne pour améliorer la visibilité.
Voici un code en ligne:
For Each Obj In CurrentProject.AllForms
If Obj.Name <> Me.Name Then
DoCmd.OpenForm Obj.Name, acDesign, , , , acHidden
For Each ctl In Forms(Obj.Name).Controls
If ctl.ControlType = acTextBox Then
If ctl.ControlSource = Me.Liste_Champs Then
Me.Liste_Forms.RowSource = Me.Liste_Forms.RowSource & Obj.Name & "/" & ctl.Name
& ";"
End If
End If
Next ctl
Set frm = Forms(Obj.Name)
If frm.HasModule Then
Set Mod1 = frm.Module
If Mod1.Find(Me.Liste_Champs, 1, 1, Mod1.CountOfLines, 4095) Then
Me.Liste_Modules.RowSource = Me.Liste_Modules.RowSource & Obj.Name & ";"
End If
End If
DoCmd.Close acForm, Obj.Name, acSaveNo
End If
Next Obj
Voici le même code indenté:
For Each Obj In CurrentProject.AllForms
If Obj.Name <> Me.Name Then
DoCmd.OpenForm Obj.Name, acDesign, ,
, , acHidden
For Each ctl In Forms(Obj.Name).Controls
If
ctl.ControlType = acTextBox Then
If ctl.ControlSource = Me.Liste_Champs Then
Me.Liste_Forms.RowSource = Me.Liste_Forms.RowSource & Obj.Name & "/" & ctl.Name
& ";"
End If
End If
Next ctl
Set frm = Forms(Obj.Name)
If frm.HasModule Then
Set Mod1 =
frm.Module
If Mod1.Find(Me.Liste_Champs,
1, 1, Mod1.CountOfLines, 4095) Then
Me.Liste_Modules.RowSource = Me.Liste_Modules.RowSource & Obj.Name & ";"
End If
End If
DoCmd.Close acForm, Obj.Name,
acSaveNo
End If
Next Obj
Avez-vous besoin de commenter l'indentation ?
Votre code sera d'autant plus facile à maintenir qu'il sera
clair.
Indentation manuelle ou automatique ?
Vous pouvez gérez personnellement votre indentation chaque
fois que vous utilisez une structure de contrôle et utiliser un logiciel
spécifique d'indentation pour la présentation finale.
Dans les logiciels fiables il y a GfmIndenter qu'on trouve sur
le net.
|