Le contrôle MultiPage vous permet d’implémenter des boîtes de dialogue multipages. Les titres de page sont affichés dans des onglets. La transition de page en page se fait en cliquant sur l’onglet. Vous pouvez créer, renommer, supprimer ou déplacer manuellement une page dans un contrôle MultiPage en sélectionnant le raccourci de la feuille correspondante et en cliquant avec le bouton droit sur le menu contextuel. Un objet MultiPage contient la famille Pages, qui est la collection de toutes les pages qui composent cet objet.
Tableau. Propriétés de base d’un objet MultiPage
Propriété | Description |
Value | Obtient ou définit le numéro de page actif. La numérotation est faite à partir de zéro |
MultiRow | Propriété booléenne. Si sa valeur est True, les étiquettes qui ne tiennent pas sur une seule ligne sont affichées sur plusieurs lignes. Si sa valeur est False, alors dans le cas où les raccourcis ne tiennent pas sur une ligne, une barre de défilement apparaît, vous permettant de vous déplacer de page en page |
SelectedItem | Renvoie la page sélectionnée |
La famille Pages comprend tous les objets Page, c’est-à-dire les pages d’un objet MultiPage. La famille Pages a une seule propriété, Count, qui renvoie le nombre de membres de la famille. Les méthodes de la famille Pages sont répertoriées dans le tableau suivant.
Tableau. Méthodes de famille de pages
Méthode | Description |
Add | Crée une nouvelle page |
Clear | Supprime toutes les pages de la famille Pages |
Remove | Supprime une page de la famille Pages |
Item | Renvoie la page avec l’index spécifié |
Le contrôle TabStrip ou contrôles Onglet crée plusieurs onglets dans une boîte de. L’objet TabStrip contient la famille Tabs, qui est une collection de tous les onglets. L’objet TabStrip et la famille Tabs ont les mêmes propriétés et méthodes que l’objet MultiPage et la famille Pages.
Nous allons reprendre et améliorer l’exemple de la section Contrôle RefEdit dans un formulaire personnalisé: Détermination des paramètres statistiques de plage. Créez un formulaire sur lequel placer un ensemble de pages. Sur la première page, définissez Caption sur Calculer, placez un contrôle RefEdit, une zone de texte et un bouton de commande. Sur la deuxième page, définissez Caption sur Options, placez trois cases à cocher.
Figure: Un exemple de contrôle MultiPage
À l’aide de la fenêtre Propriétés, définissez les valeurs des propriétés des contrôles comme indiqué dans le tableau suivant.
Tableau : Valeurs de propriété définies dans la fenêtre Propriétés
Objet | Propriété | Valeur |
Zone de texte | Name | TxtStat |
Bouton de commande | Name | CmdOK |
Caption | OK | |
Case à cocher | Name | ChkSomme |
Caption | Somme | |
Case à cocher | Name | ChkMax |
Caption | Maximum | |
Case à cocher | Name | ChkMin |
Caption | Le minimum |
Dans le module de formulaire, entrez le code suivant :
Private Sub UserForm_Initialize() txtStat.Locked = True txtStat.MultiLine = True txtStat.BackColor = BackColor End Sub Private Sub cmdOK_Click() Dim r As String Dim m As Double Dim max As Double Dim min As Double Dim somme As Double r = RefEdit1.Value Dim rgn As Range Set rgn = Range(r) Dim msg As String If chkSomme.Value Then somme = WorksheetFunction.Sum(rgn) msg = "somme = " & somme & vbCr End If If chkMax.Value Then max = WorksheetFunction.max(rgn) msg = msg & "max=" & max & vbCr End If If chkMin.Value Then min = WorksheetFunction.min(rgn) msg = msg & "min=" & min & vbCr End If If msg = Empty Then txtStat.Text = "Sélectionner au moins une case de la page Options" Else txtStat.Text = msg End If End Sub
Commentaires
■ Dans la zone de texte, les statistiques intégrées sont affichées sur plusieurs lignes dont les paramètres sont définis par les cases à cocher de la page Paramètres.
■ La zone de texte est verrouillé pour que l’utilisateur corrige les résultats.
■ En outre, la couleur d’arrière-plan du champ est définie sur la couleur d’arrière-plan du formulaire. Par conséquent, visuellement, le champ de saisie est perçu comme une inscription enfoncée dans le formulaire.