Copyright: Automated from the Object Model Database.


CheckBox, contrôle

Affiche l’état de la sélection d’un élément.

Remarques

Utilisez un contrôle CheckBox pour permettre à l’utilisateur de choisir entre deux valeurs telles que Oui/Non, Vrai/Faux ou Actif/Inactif. Quand l’utilisateur sélectionne un contrôle CheckBox, une marque spéciale (un X, par exemple) s’affiche et sa valeur courante est Oui, Vrai ou Actif ; si l’utilisateur ne sélectionne pas le contrôle CheckBox, celui-ci est vide et sa valeur est Non, Faux ou Inactif. Selon la valeur de la propriété TripleState, un contrôle CheckBox peut aussi avoir une valeur nulle.

Si un contrôle CheckBox est dépendant d’une source de données, le changement de paramètre modifie la valeur de cette source. Un contrôle CheckBox désactivé affiche sa valeur courante mais il apparaît ombré et ne permet pas à l’utilisateur de modifier sa valeur.

Vous pouvez aussi utiliser des cases à cocher à l’intérieur d’une zone de groupe pour sélectionner un ou plusieurs éléments connexes. Par exemple, vous pouvez créer un bon de commande contenant une liste des éléments disponibles, en faisant précéder chaque élément d’un contrôle CheckBox. L’utilisateur peut sélectionner un ou plusieurs éléments particuliers en cochant le contrôle CheckBox correspondant.

La propriété par défaut d’un contrôle CheckBox est la propriété Value.

L’événement par défaut d’un contrôle CheckBox est l’événement Click.

Note  Le contrôle ListBox permet également d’insérer une coche par option sélectionnée. Selon votre application, vous pouvez utiliser le contrôle ListBox au lieu d’un groupe de contrôles CheckBox.


ComboBox, contrôle

Allie les caractéristiques d’un contrôle ListBox et d’un contrôle TextBox. L’utilisateur peut entrer une nouvelle valeur, comme dans un contrôle TextBox ou bien sélectionner une valeur existante comme dans un contrôle ListBox.

Remarques

Si un contrôle ComboBox est dépendant d’une source de données, il insère dans cette source de données la valeur que l’utilisateur entre ou sélectionne. Si une liste modifiable multicolonne est dépendante, la propriété BoundColumn détermine la valeur enregistrée dans la source de données dont dépend la liste modifiable.

La liste d’un contrôle ComboBox se compose de lignes de données. Chacune d’elle peut contenir une ou plusieurs colonnes qui peuvent apparaître avec ou sans titre. Certaines applications n’utilisent pas les titres de colonne, d’autres ne les l’utilisent que partiellement.

La propriété par défaut d’un contrôle ComboBox est la propriété Value.

L’événement par défaut d’un contrôle ComboBox est l’événement Change.

Note  Pour que plusieurs lignes de la liste s’affichent en permanence, vous pouvez utiliser un contrôle ListBox au lieu d’un contrôle ComboBox. Si vous voulez utiliser un contrôle ComboBox et limiter les valeurs à celles contenues dans la liste, vous pouvez définir la propriété Style du contrôle ComboBox de sorte que le contrôle ait l’aspect d’une zone de liste déroulante.


CommandButton, contrôle

Lance, termine ou interrompt une action ou une série d’actions.

Remarques

La macro ou la procédure d’événement affectée à l’événement Click du contrôle CommandButton détermine l’action de celui-ci. Par exemple, vous pouvez créer un contrôle CommandButton qui ouvre une autre feuille. Vous pouvez aussi afficher un texte, une image ou les deux sur un contrôle CommandButton.

La propriété par défaut d’un contrôle CommandButton est la propriété Value.

L’événement par défaut d’un contrôle CommandButton est l’événement Click.


Frame, contrôle

Crée un groupe de contrôles fonctionnel et visuel.

Remarques

Tous les boutons d’option d’un contrôle Frame s’excluent l’un l’autre, de sorte que vous pouvez utiliser le contrôle Frame pour créer un groupe d’options. Vous pouvez aussi utiliser un contrôle Frame pour regrouper des contrôles dont le contenu est étroitement associé. Par exemple, dans une application qui traite les commandes clients, vous pouvez utiliser un contrôle Frame pour regrouper noms, adresses et numéros de comptes des clients.

Vous pouvez aussi utiliser un contrôle Frame pour créer un groupe de boutons bascules, mais ceux-ci ne s’excluent pas l’un l’autre.

L’événement par défaut d’un contrôle Frame est l’événement Click.


Image, contrôle

Affiche une image sur une feuille.

Remarques

Le contrôle Image vous permet d’afficher une image comme partie des données contenues dans une feuille. Par exemple, vous pouvez utiliser un contrôle Image pour afficher la photographie des employés dans une feuille du personnel.

Le contrôle Image vous permet de couper, de redimensionner ou d’effectuer un zoom avant ou arrière sur l’image, mais ne vous permet pas d’en modifier le contenu. Par exemple, vous ne pouvez utiliser le contrôle Image pour modifier les couleurs d’une image, pour la rendre transparente ou pour affiner la vue de l’image. Pour effectuer ces opérations, il vous faut un logiciel de traitement d’image.

Le contrôle Image supporte les formats de fichiers suivants :

•	*.bmp

•	*.cur

•	*.gif

•	*.ico

•	*.jpg

•	*.wmf

Note  Vous pouvez aussi afficher une image sur un contrôle Label, mais celui-ci ne vous permet pas de couper, de redimensionner ni d’effectuer un zoom avant ou arrière sur l’image.

L’événement par défaut du contrôle Image est l’événement Click.


ListBox, contrôle

Affiche une liste de valeurs et vous permet d’en sélectionner une ou plusieurs.

Remarques

Si le contrôle ListBox est dépendant d’une source de données, il enregistre la valeur sélectionnée dans cette source de données.

Le contrôle ListBox peut apparaître sous la forme d’une liste, d’un groupe de contrôles OptionButton ou de contrôles CheckBox.

La propriété par défaut d’un contrôle ListBox est la propriété Value.

L’événement par défaut d’un contrôle ListBox est l’événement Click.

Note   Vous ne pouvez déplacer du texte dans un contrôle ListBox déroulant.


MultiPage, contrôle

Présente plusieurs écrans d’information sous forme d’un ensemble unique.

Remarques

Un contrôle MultiPage est utile lorsque vous travaillez avec un gros volume d’informations qui peuvent être triées en plusieurs catégories. Vous pouvez notamment utiliser un contrôle MultiPage pour afficher les informations contenues dans une candidature et, par exemple, réserver une page aux renseignements personnels tels que le nom et l’adresse, une autre à la liste des précédents employeurs et une troisième à la liste des références. Le contrôle MultiPage vous permet de combiner visuellement des informations connexes tout en conservant un enregistrement complet facilement accessible.

Les nouvelles pages sont ajoutées à droite de la page sélectionnée.

Note  Le contrôle MultiPage est un conteneur d’une collection d’objets Pages dans laquelle chaque page contient un ou plusieurs objets Page.

La propriété par défaut d’un contrôle MultiPage est la propriété Value qui renvoie l’index de la Page couramment active dans la collection de Pages du contrôle MultiPage.

L’événement par défaut d’un contrôle MultiPage est l’événement Change.


OptionButton, contrôle

Affiche l’état de la sélection d’un élément faisant partie d’un groupe.

Remarques

Utilisez un contrôle OptionButton pour afficher si un seul élément contenu dans un groupe est sélectionné. Notez que tous les contrôles OptionButton d’un contrôle Frame s’excluent l’un l’autre.

Si un contrôle OptionButton est dépendant d’une source de données, il peut afficher la valeur de cette source de données comme étant Oui/Non, Vrai/Faux ou Actif/Inactif. Si l’utilisateur sélectionne le contrôle OptionButton, la valeur courante est Oui, Vrai ou Actif ; si l’utilisateur ne sélectionne pas le contrôle OptionButton, la valeur est Non, Faux ou Inactif. Par exemple, dans une application de suivi des stocks, un contrôle OptionButton peut faire apparaître si la production d’un élément est arrêtée. Si le contrôle OptionButton est dépendant d’une source de données, le changement de paramètre modifie la valeur de cette source. Un contrôle OptionButton désactivé est indisponible et il n’affiche aucune valeur.

Selon la valeur de la propriété TripleState, un contrôle OptionButton peut aussi avoir une valeur nulle.

Vous pouvez aussi utiliser un contrôle OptionButton à l’intérieur d’une zone de groupe pour sélectionner un ou plusieurs groupes d’éléments connexes. Par exemple, vous pouvez créer un bon de commande contenant une liste des éléments disponibles, en faisant précéder chaque élément d’un contrôle OptionButton. L’utilisateur peut sélectionner un élément particulier en cochant le contrôle OptionButton correspondant.

La propriété par défaut d’un contrôle OptionButton est la propriété Value.

L’événement par défaut d’un contrôle OptionButton est l’événement Click.


ScrollBar, contrôle

Retourne ou définit la valeur d’un autre contrôle en fonction de la position du curseur de défilement.

Remarques

Le contrôle ScrollBar est un contrôle autonome que vous pouvez placer sur une feuille. Son aspect visuel est identique à celui de la barre de défilement présente dans certains objets tels qu’un contrôle ListBox ou dans la partie déroulante d’un contrôle ComboBox. Toutefois, à l’inverse des barres de défilement citées dans ces exemples, le contrôle ScrollBar autonome ne fait pas partie intégrante d’un autre contrôle.

Pour utiliser le contrôle ScrollBar afin de définir ou de lire la valeur d’un autre contrôle, vous devez écrire un code pour les événements et les méthodes du contrôle ScrollBar. Par exemple, pour utiliser le contrôle ScrollBar en vue de mettre à jour la valeur d’un contrôle TextBox, vous pouvez écrire un code lisant la propriété Value du contrôle ScrollBar, puis définir la propriété Value du contrôle TextBox.

La propriété par défaut d’un contrôle ScrollBar est la propriété Value.

L’événement par défaut d’un contrôle ScrollBar est l’événement Change.

Note  Pour créer un contrôle ScrollBar vertical ou horizontal, faites glisser les poignées de redimensionnement du contrôle ScrollBar horizontalement ou verticalement sur la feuille.


SpinButton, contrôle

Incrémente et décrémente des nombres.

Remarques

Cliquer sur un contrôle SpinButton ne modifie que la valeur de celui-ci. Vous pouvez écrire un code qui utilise le contrôle SpinButton pour mettre à jour la valeur affichée d’un autre contrôle. Par exemple, vous pouvez utiliser un contrôle SpinButton pour changer le mois, le jour ou l’année dans une date. Vous pouvez aussi utiliser un contrôle SpinButton pour faire défiler une série de valeurs ou une liste d’éléments, ou bien pour modifier la valeur affichée dans une zone de texte.

Pour afficher une valeur mise à jour à l’aide d’un contrôle SpinButton, vous devez affecter la valeur du contrôle SpinButton à la partie affichée d’un contrôle telle que la propriété Caption d’un contrôle Label ou la propriété Text d’un contrôle TextBox. Pour créer un contrôle SpinButton horizontal ou vertical, faites glisser les poignées de redimensionnement du contrôle SpinButton horizontalement ou verticalement sur la feuille.

La propriété par défaut d’un contrôle SpinButton est la propriété Value.

L’événement par défaut d’un contrôle SpinButton est l’événement Change.


TabStrip, contrôle

Présente un ensemble de contrôles connexes sous forme d’un groupe visuel.

Remarques

Vous pouvez utiliser un contrôle TabStrip pour visualiser différents ensembles d’informations concernant des contrôles connexes.

Par exemple, les contrôles peuvent représenter des informations relatives à l’emploi du temps journalier d’un groupe de personnes, chaque ensemble d’informations correspondant à une différente personne du groupe. Définissez le titre de chaque onglet pour afficher le nom d’une seule personne. Vous pouvez ensuite écrire un code qui, quand vous cliquez sur l’onglet, met à jour les contrôles pour afficher les informations concernant la personne dont le nom figure sur l’onglet.

Note  Le contrôle TabStrip est mis en œuvre comme le conteneur d’une collection Tabs qui elle-même contient un groupe d’objets Tab.

La propriété par défaut d’un contrôle TabStrip est la propriété SelectedItem.

L’événement par défaut d’un contrôle TabStrip est l’événement Change.


TextBox, contrôle

Affiche des informations émanant d’un utilisateur ou d’un ensemble organisé de données.

Remarques

Le contrôle TextBox est le contrôle le plus souvent utilisé pour afficher les informations entrées par un utilisateur. Il peut également afficher un ensemble de données, tel qu’une table, une requête, une feuille de programmation ou le résultat d’un calcul. Si un contrôle TextBox est dépendant d’une source de données, les changements apportés au contenu d’un contrôle TextBox modifient aussi la valeur de la source de données dont il dépend.

Le format appliqué à toute partie du texte du contrôle TextBox se répercutera à la totalité du texte du contrôle. Par exemple, si vous changez la police ou la taille d’un caractère du contrôle, la modification affecte tous les caractères du contrôle.

La propriété par défaut d’un contrôle contrôle TextBox est la propriété Value.

L’événement par défaut d’un contrôle TextBox est l’événement Change.


ToggleButton, contrôle

Affiche l’état de la sélection d’un élément.

Remarques

Utilisez un contrôle ToggleButton pour afficher si un élément est sélectionné. Si un contrôle ToggleButton est dépendant d’une source de données, il affiche la valeur courante de cette source de données comme étant Oui/Non, Vrai/Faux, Actif/Inactif ou tout autre choix de deux valeurs. Si l’utilisateur sélectionne le contrôle ToggleButton, la valeur courante est Oui, Vrai ou Actif ; si l’utilisateur ne sélectionne pas le contrôle ToggleButton, la valeur est Non, Faux ou Inactif. Si le contrôle ToggleButton est dépendant d’une source de données, le changement de paramètre modifie la valeur de cette source. Un contrôle ToggleButton désactivé affiche une valeur, mais il est indisponible et n’autorise pas les changements à partir de l’interface utilisateur.

Vous pouvez aussi utiliser un contrôle ToggleButton à l’intérieur d’un contrôle Frame pour sélectionner un ou plusieurs groupes d’éléments connexes. Par exemple, vous pouvez créer un bon de commande contenant une liste des éléments disponibles, en faisant précéder chaque élément d’un contrôle ToggleButton. L’utilisateur peut choisir un élément particulier en sélectionnant le ToggleButton approprié.

La propriété par défaut d’un contrôle ToggleButton est la propriété Value.

L’événement par défaut d’un contrôle ToggleButton est l’événement Click.


DataObject, objet

Zone de réserve pour les données texte formatées, utilisée dans les opérations de transfert. Cet objet contient aussi une liste des formats correspondants aux éléments texte enregistrés dans le DataObject.

Remarques

Un objet DataObject peut contenir un seul élément texte au format texte du Presse-papiers et un seul élément texte pour chaque format texte supplémentaire, comme par exemple les formats personnalisés et ceux définis par l’utilisateur.

Un objet DataObject se distingue du Presse-papiers. Un objet DataObject supporte des commandes mettant en jeu le Presse-papiers et les actions glisser-déplacer dans un texte. Quand vous commencez une opération impliquant le Presse-papiers (GetText par exemple) ou une opération glisser-déplacer, les données participant à cette opération sont déplacées dans un DataObject.

Le DataObject fonctionne comme le Presse-papiers. Si vous copiez une chaîne de texte dans un DataObject, celui-ci enregistre la chaîne. Si vous copiez une deuxième chaîne de format identique dans le DataObject, celui-ci efface la première chaîne et enregistre une copie de la seconde. Il enregistre un seul élément texte dans un format spécifié et conserve le texte provenant de l’opération la plus récente.


Font, objet

Définit les caractéristiques du texte utilisé par un contrôle ou une feuille.

Remarques

Chaque contrôle ou feuille possède son propre objet Font qui vous permet de définir ses caractéristiques de texte indépendamment de celles définies pour les autres contrôles et les autres feuilles. Utilisez les propriétés de police pour spécifier le nom de la police, pour définir du texte gras ou souligné ou pour ajuster la taille du texte.

Note  Les propriétés de police de votre feuille ou conteneur déterminent les attributs de la police par défaut des contrôles que vous insérez dans la feuille.

La propriété par défaut de l’objet Font est la propriété Name. Si cette dernière contient une chaîne nulle, l’objet Font utilise la police par défaut du système.


Label, contrôle

Affiche un texte descriptif.

Remarques

Un contrôle Label dans une feuille affiche un texte descriptif tel que des titres, des légendes, des images ou de brèves instructions. Par exemple, les étiquettes d’un carnet d’adresses peuvent inclure un contrôle Label pour un nom, une rue ou une ville. Un contrôle Label n’affiche pas de valeurs issues de sources de données ou d’expressions ; il est toujours indépendant et ne change pas lorsque vous vous déplacez d’un enregistrement à l’autre.

La propriété par défaut d’un Label est la propriété Caption.

L’événement par défaut d’un Label est l’événement Click.


Page, objet

Une seule page d’un contrôle MultiPage et un membre simple d’une collection Pages.

Remarques

Chaque objet Page contient son propre jeu de contrôles et ne s’appuie pas nécessairement sur les autres pages de la collection en ce qui concerne les informations. Un objet Page hérite de certaines propriétés de son container ; la valeur de chaque propriété héritée est définie par le conteneur.

Un objet Page possède un nom et une valeur d’index uniques dans une collection de Pages. Vous pouvez référencer une Page soit par son nom soit par sa valeur d’index. L’index du premier objet Page d’une collection est 0 ; l’index du deuxième objet Page est 1, etc. Si deux objets Page ont le même nom, vous devez référencer chaque objet Page par sa valeur d’index. La référence au nom dans le code n’accédera qu’a premier objet Page portant ce nom.

Le nom par défaut de la première Page est Page1 ; le nom par défaut de la deuxième Page est Page2.


Tab, objet

Un objet Tab est un membre individuel d’une collection Tabs.

Remarques

Sur le plan visuel, un objet Tab apparaît sous forme d’un rectangle en saillie sur une zone rectangulaire plus grande ou sous forme d’un bouton adjacent à une zone rectangulaire.

Contrairement à un objet Page, un objet Tab ne contient pas de contrôles. Les contrôles qui s’affichent dans la région limitée par un contrôle TabStrip sont contenus dans la feuille, comme le contrôle TabStrip.

Chaque objet Tab a son propre ensemble de propriétés, mais ne possède ni méthode ni événement. Vous devez utiliser les événements du contrôle TabStrip approprié pour initialiser le traitement d’un objet Tab individuel.

Chaque objet Tab possède un nom et une valeur d’index uniques dans la collection. Vous pouvez référencer un objet Tab soit par son nom, soit par sa valeur d’index. L’index du premier objet Tab est 0 ; l’index du deuxième objet Tab est 1, etc. Si deux objets Tab ont le même nom, vous devez référencer chaque Tab par sa valeur d’index. La référence au nom dans le code n’accédera qu’au premier objet Tab portant ce nom.


Controls, collection

Inclut tous les contrôles contenus dans un objet.

Remarques

Chaque contrôle appartenant à la collection Controls possède en tant qu’objet un index unique dont la valeur peut être un nombre entier ou une chaîne. La valeur d’index du premier contrôle d’une collection est 0 ; la valeur du deuxième contrôle est 1, etc. Cette valeur indique l’ordre dans lequel les contrôles ont été ajoutés à la collection.

Si l’index est une chaîne, il représente le nom du contrôle. La propriété Name d’un contrôle spécifie aussi un nom de contrôle.

Vous pouvez utiliser la collection Controls pour énumérer ou compter individuellement les contrôles et pour définir leurs propriétés. Par exemple, vous pouvez énumérer la collection Controls d’une feuille particulière et affecter à la propriété Height de chaque contrôle une valeur particulière.

Note  L’instruction For Each...Next est utile pour énumérer une collection.


Pages, collection

Une collection Pages inclut toutes les pages d’un contrôle MultiPage.

Remarques

Chaque collection Pages propose des fonctions permettant de gérer le nombre de pages présentes dans la collection et d’identifier la page en cours d’utilisation.

Un objet Page possède un nom et une valeur d’index uniques dans une collection Pages. Vous pouvez référencer un objet Page soit par son nom, soit par sa valeur d’index. L’index du premier objet Page d’une collection est 0 ; l’index du deuxième objet Page est 1, etc. Le nom par défaut du premier objet page est Page1 ; le nom par défaut du deuxième est Page2.

La valeur par défaut d’une collection Pages identifie l’objet Page courant de la collection.


Tabs, collection

Une collection de Tabs inclut tous les objets Tab d’un contrôle TabStrip.

Remarques

Chaque collection Tabs propose les fonctions permettant de gérer le nombre d’onglets présents dans la collection et d’identifier l’onglet en cours d’utilisation.

La valeur par défaut d’une collection Tabs identifie l’objet Tab courant d’une collection.

Un objet Tab possède un nom et une valeur d’index uniques au sein de la collection Tabs. Vous pouvez référencer un objet Tab soit par son nom, soit par sa valeur d’index. La valeur d’index correspond à la position ordinale de l’objet Tab dans la collection. L’index du premier objet Tab d’une collection est 0 ; l’index du deuxième objet Tab est 1, etc.


Modèle objet, présentation
Présentation du modèle objet Microsoft Forms


AddControl, événement

Survient lors de l'insertion d'un contrôle dans une feuille, un contrôle Frame, ou un objet Page d'un contrôle MultiPage.

Syntaxe

Pour un contrôle cadre (Frame)
Private Sub object_AddControl( )

Pour un contrôle multi page (Multipage)
Private Sub object_AddControl( index As Long, ctrl As Control)

La syntaxe de l'événement AddControl comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	Index de l’objet Page qui contient le nouveau contrôle.
ctrl	Contrôle à ajouter.
Remarques

L'événement AddControl se déclenche lorsqu'un contrôle est ajouté au moment de l'exécution Cet événement n'est pas déclenché lorsque vous ajoutez un contrôle au moment de la conception, ni lorsqu'une feuille est initialement chargée et affichée au moment de l'exécution.

L'action par défaut de cet événement est d'ajouter un contrôle à la feuille, au contrôle Frame ou à un contrôle MultiPage spécifié.

La méthode Add déclenche l'événement AddControl.


AfterUpdate, événement

Survient après la modification de données dans un contrôle par l’utilisateur.

Syntaxe

Private Sub object_AfterUpdate( )

La syntaxe de l'événement AfterUpdate comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

L'événement AfterUpdate se produit, que le contrôle soit dépendant ou non dépendant (c'est-à-dire, lorsque la propriété RowSource spécifie une source de données pour le contrôle). Cet événement ne peut être annulé. Si vous souhaitez annuler la mise à jour (pour rétablir la valeur précédente du contrôle), utilisez l'événement BeforeUpdate et affectez la valeur True à l'argument Cancel.

L'événement AfterUpdate se produit après l'événement BeforeUpdate et avant l'événement Exit pour le contrôle actif et avant l'événement Enter pour le contrôle suivant dans l’ordre de tabulation


BeforeDragOver, événement

Survient lorsqu'une opération glisser-déplacer est en cours.

Syntaxe

Pour un contrôle cadre (Frame)
Private Sub object_BeforeDragOver( ByVal Cancel As MSForms.ReturnBoolean, ctrl As Control, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour un contrôle multi page (Multipage)
Private Sub object_BeforeDragOver( index As Long, ByVal Cancel As MSForms.ReturnBoolean, ctrl As Control, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour un contrôle barre d'onglets (TabStrip)
Private Sub object_BeforeDragOver( index As Long, ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour d'autres contrôles
Private Sub object_BeforeDragOver( ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

La syntaxe de l'événement BeforeDragOver comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de l’objet page d'un contrôle MultiPage que l'opération glisser-déplacer affecte.
Cancel	État de gestion d'événement. False indique que le contrôle doit gérer l'événement (par défaut). True indique que l'application gère l'événement.
ctrl	Contrôle déplacé.
Data	Données qui sont déplacées dans l'opération glisser-déplacer. Les données sont groupées dans un DataObject.
X, Y	Coordonnées horizontale et verticale de la position du contrôle. Les deux coordonnées sont mesurées en points. X est mesuré depuis le bord gauche du contrôle ; Y est mesuré depuis le haut du contrôle.
DragState	État transitoire des données en cours de déplacement.
Effect	Opérations prises en charge par la source
Shift	Spécifie l'état de MAJ, CTRL et ALT.
Valeurs

Les valeurs de DragState sont les suivantes :

Constante	Valeur	Description
fmDragStateEnter	0	Le pointeur de la souris est dans la plage d'une cible.
fmDragStateLeave	1	Le pointeur de la souris est hors de la plage d'une cible.
fmDragStateOver	2	Le pointeur de la souris est sur une nouvelle position, mais reste dans la plage de la même cible.
Les valeurs d'Effect sont les suivantes :

Constante	Valeur	Description
fmDropEffectNone	0	Ne copie ni ne déplace la source vers la cible.
fmDropEffectCopy	1	Copie la source vers la cible.
fmDropEffectMove	2	Déplace la source vers la cible.
fmDropEffectCopyOrMove	3	Copie ou déplace la source vers la cible.
Les valeurs de Shift sont les suivantes :

Constante	Valeur	Description
fmShiftMask	1	MAJ a été appuyé.
fmCtrlMask	2	CTRL a été appuyé.
fmAltMask	4	ALT a été appuyé.
Remarques

Utilisez cet événement pour surveiller le pointeur de la souris lorsqu'il entre, quitte, ou est positionné au-dessus d'une cible valide. Lors d'une opération glisser-déplacer, le système exécute cet événement lorsque l'utilisateur déplace la souris, appuie sur les boutons de la souris ou les relâche . La position du pointeur de la souris détermine l'objet cible recevant cet événement. Vous pouvez déterminer l'état du pointeur de la souris en examinant l'argument DragState.

Lorsqu'un contrôle gère cet événement, vous pouvez utiliser l'argument Effect afin d'identifier l'action glisser-déplacer à effectuer. Lorsque Effect est défini sur fmDropEffectCopyOrMove, la source accepte les opérations de copie (fmDropEffectCopy), de déplacement (fmDropEffectMove) et d’annulation (fmDropEffectNone).

Lorsque Effect est défini sur fmDropEffectCopy, la source accepte copie ou annulation (fmDropEffectNone).

Lorsque Effect est défini sur fmDropEffectMove, la source accepte déplacement ou annulation (fmDropEffectNone).

Lorsque Effect est défini sur fmDropEffectNone, la source accepte l’annulation.

La plupart des contrôles ne prennent pas en charge l’opération de glisser-déplacer si Cancel a la valeur False (par défaut). Cela signifie que le contrôle rejette toute tentative de glisser-déplacer sur le contrôle, et il ne déclenche pas l’événement BeforeDropOrPaste. Deux exceptions à cette règle : les contrôles TextBox et ComboBox qui supportent l’opération de glisser-déplacer même si Cancel a la valeur False.


BeforeDropOrPaste, événement

Survient lorsque l'utilisateur est sur le point de déplacer ou coller des données sur un objet.

Syntaxe

Pour un contrôle cadre (Frame)
Private Sub object_BeforeDropOrPaste( ByVal Cancel As MSForms.ReturnBoolean, ctrl As Control, ByVal Action As fmAction, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour un contrôle multi page (Multipage)
Private Sub object_BeforeDropOrPaste( index As Long, ByVal Cancel As MSForms.ReturnBoolean, ctrl As Control, ByVal Action As fmAction, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour un contrôle barre d'onglets (TabStrip)
Private Sub object_BeforeDropOrPaste( index As Long, ByVal Cancel As MSForms.ReturnBoolean, ByVal Action As fmAction, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

Pour d'autres contrôles
Private Sub object_BeforeDropOrPaste( ByVal Cancel As MSForms.ReturnBoolean, ByVal Action As fmAction, ByVal Data As DataObject, ByVal X As Single, ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As fmShiftState)

La syntaxe de l'événement BeforeDropOrPaste comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de l’objet Page d'un contrôle MultiPage que l'opération déplacer ou coller affecte.
Cancel	État de gestion d’événement. False indique que le contrôle doit gérer l'événement (par défaut). True indique que l'application gère l'événement.
ctrl	Contrôle cible.
Action	Indique le résultat, en fonction des réglages actuels du clavier, de l'opération glisser-déplacer en attente.
Data	Données déplacées au cours d'une opération glisser-déplacer. Les données sont groupées dans un DataObject.
X, Y	Coordonnées horizontale et verticale de la position du pointeur de la souris lors d’un glisser-déplacer. L’unité de mesure des deux coordonnées est le point. X est mesuré du bord gauche du contrôle, Y du bord supérieur.
Effect	Effet de l'opération glisser-déplacer sur le contrôle cible.
Shift	Spécifie l'état de MAJ, CTRL et ALT.
Valeurs

Les valeurs d'Action sont les suivantes :

Constante	Valeur	Description
fmActionPaste	2	Colle les données copiées en mémoire dans le contrôle cible.
fmActionDragDrop	3	Indique que l'utilisateur a réalisé une opération glisser-déplacer de l'objet vers le contrôle cible.
Les valeurs d'Effect sont les suivantes :

Constante	Valeur	Description
fmDropEffectNone	0	Ne copie ni ne déplace la source vers la cible.
fmDropEffectCopy	1	Copie la source vers la cible.
fmDropEffectMove	2	Déplace la source vers la cible.
fmDropEffectCopyOrMove	3	Copie ou déplace la source vers la cible.
Les valeurs de Shift sont les suivantes :

Constante	Valeur	Description
fmShiftMask	1	MAJ a été appuyé.
fmCtrlMask	2	CTRL a été appuyé.
fmAltMask	4	ALT a été appuyé.
Remarques

Pour un contrôle MultiPage ou un contrôle TabStrip, Visual Basic pour Applications exécute cet événement lorsqu'il transfère un objet de données vers le contrôle.

Pour d'autres contrôles, le système exécute immédiatement cet événement avant l'opération déplacer ou coller.

Lorsqu'un contrôle gère cet événement, vous pouvez mettre à jour l'argument Action pour identifier l'action glisser-déplacer à effectuer. Lorsque la valeur de l’argument Effect est fmDropEffectCopyOrMove, vous pouvez affecter à l’argument Action la valeur  fmDropEffectNone, fmDropEffectCopy, ou fmDropEffectMove. Quand la valeur de l’argument Effect est fmDropEffectCopy ou fmDropEffectMove, vous pouvez affecter à l’argument  Action la valeur fmDropEffectNone. Vous ne pouvez pas réaffecter un valeur à l’argument Action quand la valeur de l’argument Effect est fmDropEffectNone.


BeforeUpdate, événement

Survient avant la modification des données dans un contrôle.

Syntaxe

Private Sub object_BeforeUpdate( ByVal Cancel As MSForms.ReturnBoolean)

La syntaxe de l'événement BeforeUpdate comprend les éléments suivants :

Élément	Description
object	Objet valide.
Cancel	État de gestion d’événement. False indique que le contrôle doit gérer l'événement (par défaut). True annule la mise à jour et indique que l'application doit gérer l'événement.
Remarques

L'événement BeforeUpdate se déclenche, que le contrôle soit dépendant ou non dépendant (c'est-à-dire, lorsque la propriété RowSource spécifie une source de données pour le contrôle). Cet événement se déclenche avant les événements AfterUpdate et Exit pour le contrôle actif (et avant l'événement Enter pour le contrôle qui reçoit le focus ).

Si vous affectez la valeur True à l'argument Cancel, le focus reste sur le contrôle et aucun des événements AfterUpdate et Exit ne se déclenche.


Change, événement

Survient lors de la modification de la propriété Value.

Syntaxe

Private Sub object_Change( )

La syntaxe de l'événement Change comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs

L’événement Change survient lorsque la valeur de la propriété Value change, que la modification résulte de l’exécution du code ou d’une action de l’utilisateur dans l’interface.

Voici quelques exemples d’actions modifiant la propriété Value :

•	Clic sur un contrôle CheckBox, OptionButton ou ToggleButton.

•	Frappe ou sélection d’une nouvelle valeur texte pour un contrôle ComboBox, ListBox ou TextBox.

•	Sélection d’un onglet différent dans un contrôle TabStrip.

•	Déplacement de la barre de défilement dans un contrôle ScrollBar.

•	Clic sur les flèches haut ou bas dans un contrôle SpinButton.

•	Sélection d’une page différente dans un contrôle MultiPage.

Remarques

La procédure d'événement Change peut synchroniser ou coordonner des données affichées parmi les contrôles. Par exemple, vous pouvez utiliser la procédure d'événement Change d'un contrôle ScrollBar pour mettre à jour le contenu d'un contrôle TextBox qui affiche la valeur du contrôle ScrollBar. Ou vous pouvez utiliser une procédure d'événement Change pour afficher des données et des formules dans une zone de travail et des résultats dans une autre zone.

Note  Dans certains cas, l’événement Click peut également survenir lorsque la propriété Value change. Toutefois, il est préférable d’utiliser l’événement Change pour détecter un changement de valeur de la propriété.


Click, événement

Survient dans l’un des cas suivants :

•	L’utilisateur clique sur un contrôle.

•	L’utilisateur sélectionne de façon définitive une valeur parmi d’autres pour un contrôle.

Syntaxe

Pour un contrôle multi page (MultiPage) ou barre d'onglets (TabStrip)
Private Sub object_Click( index As Long)

Pour tous les autres contrôles
Private Sub object_Click( )

La syntaxe de l'événement Click comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	L'index de la page ou de l’onglet d'un contrôle MultiPage ou contrôle TabStrip associé à cet événement.
Remarques

Des deux cas où l’événement Click peut survenir, le premier s’applique aux contrôles CommandButton, Frame, Image, Label, ScrollBar et SpinButton ; le second à CheckBox, ComboBox, ListBox, MultiPage, TabStrip et ToggleButton. Cela s’applique également au contrôle OptionButton quand il prend la valeur True.

Voici quelques exemples d’actions pouvant provoquer l’événement Click :

•	Cliquer sur une zone vierge d’une feuille ou sur un contrôle désactivé (autre qu’une zone de liste) de la feuille.

•	Cliquer sur un contrôle CommandButton. Si le bouton de commande n’a pas déjà le focus, l’événement Enter survient avant l’événement Click.

•	Appuyer sur la touche ESPACE lorsqu’un contrôle CommandButton a le focus.

•	Cliquer sur un contrôle avec le bouton gauche de la souris.

•	Appuyer sur ENTRÉE dans une feuille qui contient un bouton de commande dont la propriété Default a la valeur True, à condition qu’aucun autre bouton de commande n’ait le focus.

•	Appuyer sur ÉCHAP alors que la feuille active contient un bouton de commande dont la valeur de la propriété Cancel est True, à condition qu’aucun autre bouton de commande n’ait le focus.

•	Appuyer sur une touche d'accès rapide associée à un contrôle.

Lorsque l’événement Click résulte d’un clic sur un contrôle, la séquence d’événements qui le déclenche est la suivante :

1.	MouseDown

2.	MouseUp

3.	Click

Pour certains contrôles, l’événement Click survient lors de la modification de la propriété Value. Toutefois, il est préférable d’utiliser l’événement Change pour détecter le changement de valeur de la propriété. Voici quelques exemples d’actions qui génèrent l’événement Click suite à l’affectation d’une nouvelle valeur à un contrôle :

•	Cliquer sur une page ou sur un onglet différents dans un contrôle MultiPage ou TabStrip. La propriété Value pour ces contrôles reflète l'objetPage ou Tab courant. Cliquez sur la page ou sur l’onglet courants ne modifie pas la valeur du contrôle et ne provoque pas l’événement Click.

•	Cliquer sur un contrôle CheckBox ou ToggleButton, appuyer sur la touche ESPACE lorsqu’un de ces deux contrôles a le focus, appuyer sur une touche d’accès rapide pour l’un de ces contrôles, ou changer la valeur du contrôle dans le code.

•	Donner au contrôle OptionButton la valeur True. Changer ainsi la valeur de ce contrôle dans un groupe attribue la valeur False à tous les autres boutons du groupe. Toutefois, l’événement Click n’intervient que pour le bouton dont la valeur est passée sur True.

•	Sélectionner une valeur pour des contrôles ComboBox ou ListBox de sorte qu’elle corresponde sans équivoque à un élément de la liste déroulante du contrôle. Par exemple, dans une liste non triée, le premier élément correspondant aux caractères tapés dans la zone d’édition n’est peut-être pas le seul possible. Ainsi, la sélection de cette valeur ne générera pas l’événement Click. Dans une liste triée, vous pouvez utiliser la concordance complète des entrées  pour que la valeur sélectionnée soit la seule à correspondre parfaitement au texte tapé par l’utilisateur.

L’événement Click ne se produit pas si la valeur de la propriété Value est Null.

Note  Le clic gauche de la souris modifie la valeur d’un contrôle, et donc génère l’événement Click, contrairement au clic droit qui ne modifie pas cette valeur.


DblClick, événement

Survient lorsque l'utilisateur pointe sur un objet, puis double-clique sur un bouton de la souris.

Syntaxe

Pour les contrôles multi page (Multipage) et barre d'onglets (TabStrip)
Private Sub object_DblClick( index As Long, ByVal Cancel As MSForms.ReturnBoolean)

Pour d'autres contrôles
Private Sub object_DblClick( ByVal Cancel As MSForms.ReturnBoolean)

La syntaxe de l'événement DblClick comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	La position d'un objet Page ou Tab dans une collection Pages ou Tabs.
Cancel	État de gestion d’événement. False indique que le contrôle doit gérer l'événement (par défaut). True indique que l'application gère l'événement.
Remarques

Pour que cet événement se produise, deux clics doivent intervenir dans le laps de temps spécifié par le paramètre de la vitesse du double-clic du système.

Pour les contrôles gérant l’événement Click, la séquence d'événements suivante conduit à l'événement DblClick :

1.	MouseDown

2.	MouseUp

3.	Click

4.	DblClick

Si un contrôle, tel qu'un contrôle TextBox, ne gère pas l’événement Click, celui-ci est omis de l'ordre des événements conduisant à l'événement DblClick.

Si la valeur renvoyée de Cancel est True lorsque l’utilisateur double-clique, le contrôle ignore le second clic. Cela est utile si le second clic annule l’effet du premier, comme par exemple un double-clicsur un bouton à bascule. L’argument Cancel permet à la feuille d’ignorer le second clic, ainsi clic et double clic auront le même effet.


DropButtonClick, événement

Survient chaque fois qu'une liste déroulante modifiable apparaît et disparaît.

Syntaxe

Private Sub object_DropButtonClick( )

La syntaxe de l'événement DropButtonClick comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Vous pouvez déclencher l'événement DropButtonClick par du code ou par certaines actions dans l'interface utilisateur.

Dans le code, l'appel de la méthode DropDown déclenche l'événement DropButtonClick.

Dans l'interface utilisateur, l'une des actions suivantes déclenche l'événement :

•	Un clic sur le bouton d’ouverture de la liste déroulante.

•	Une pression sur la touche F4.

Chacune des actions précédentes, dans le code ou dans l'interface, fait apparaître la liste déroulante du contrôle. Le système déclenche l'événement DropButtonClick lorsque la zone de défilement disparaît.


Enter, Exit, événements

Enter se produit avant qu'un contrôle ne reçoive réellement le focus d'un contrôle de la même feuille. Exit se produit immédiatement avant qu'un contrôle perde le focus au profit d'un autre contrôle de la même feuille.

Syntaxe

Private Sub object_Enter( )

Private Sub object_Exit( ByVal Cancel As MSForms.ReturnBoolean)

La syntaxe des événements Enter et Exit comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
Cancel	État de gestion d’événement. False indique que le contrôle doit gérer l'événement (par défaut). True indique que l'application gère l'événement et que le focus doit rester sur le contrôle courant.
Remarques

Les événements Enter et Exit sont similaires aux événements GotFocus et LostFocus en Visual Basic. Contrairement à GotFocus et LostFocus, les événements Enter et Exit ne se déclenchent pas lorsqu'une feuille reçoit ou perd le focus.

Par exemple, supposons que vous sélectionniez la case à cocher qui déclenche l'événement Enter. Si vous sélectionnez un autre contrôle de la même feuille, l'événement Exit est déclenché pour cette case à cocher (parce que le focus se déplace vers un objet différent dans la même feuille), puis l'événement Enter se produit pour le deuxième contrôle de la feuille.

L'événement Enter se déclenchant avant le déplacement du focus vers un contrôle particulier, vous pouvez utiliser la procédure d'événement Enter pour afficher des instructions : par exemple, vous pouvez utiliser une macro ou une procédure d'événement pour afficher une petite feuille ou une boîte de message identifiant le type de données que contient généralement le contrôle.

Note  Pour empêcher le contrôle de perdre le focus, affectez la valeur True à l'argument Cancel de l'événement Exit.


Error, événement

Survient lorsqu'un contrôle détecte une erreur ou ne peut renvoyer des informations sur l'erreur à un programme d'appel.

Syntaxe

Pour un contrôle multi page (Multipage)
Private Sub object_Error( index As Long, ByVal Number As Integer, ByVal Description As MSForms.ReturnString, ByVal SCode As SCode, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, ByVal CancelDisplay As MSForms.ReturnBoolean)

Pour d'autres contrôles
Private Sub object_Error( ByVal Number As Integer, ByVal Description As MSForms.ReturnString, ByVal SCode As SCode, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, ByVal CancelDisplay As MSForms.ReturnBoolean)

La syntaxe d'Error comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de la page d'un contrôle MultiPage associé à cet événement.
Number	Spécifie une valeur unique que le contrôle utilise pour identifier l'erreur.
Description	Description textuelle de l'erreur.
SCode	Spécifie le code d'état OLE de l'erreur. Les 16 bits de poids faible spécifient une valeur qui est identique à l'argument Number.
Source	Chaîne identifiant le contrôle qui a déclenché l'événement.
HelpFile	Spécifie un nom de chemin d'accès complet pour le fichier décrivant l'erreur.
HelpContext	Spécifie l'ID contexte de la rubrique du fichier d'aide contenant une description de l'erreur.
CancelDisplay	Spécifie s'il faut afficher la chaîne d'erreur dans une boîte de message.
Remarques

Le code écrit pour l'événement Error détermine la façon dont le contrôle répond à la condition d'erreur.

La capacité à gérer les conditions d'erreur varie d'une application à une autre. L'événement Error est amorcé lorsqu'une erreur se produit, alors que l'application ne peut pas la gérer.


KeyDown, KeyUp, événements

Interviennent successivement lorsqu'un utilisateur appuie sur une touche puis la relâche . KeyDown se produit lorsque l'utilisateur appuie sur une touche. KeyUp se produit lorsque l'utilisateur relâche la touche.

Syntaxe

Private Sub object_KeyDown( ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As fmShiftState)

Private Sub object_KeyUp( ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As fmShiftState)

La syntaxe des événements KeyDown et KeyUp comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
KeyCode	Nombre entier correspondant au code de touche de la touche ayant été appuyée ou relâchée.
Shift	État de MAJ, CTRL et ALT.
Valeurs

Les valeurs de Shift sont les suivantes :

Constante	Valeur	Description
fmShiftMask	1	MAJ a été appuyé.
fmCtrlMask	2	CTRL a été appuyé.
fmAltMask	4	ALT a été appuyé.
Remarques

L'événement KeyDown se produit lorsque l'utilisateur appuie sur une touche alors qu’une feuille en cours d'exécution ou un contrôle de celle-ci a le focus. Les événements KeyDown et KeyPress alternent de façon répétée jusqu'à ce que l'utilisateur relâche la touche, moment auquel l'événement KeyUp se produit. La feuille ou contrôle ayant le focus reçoit toutes les frappes de touche. Une feuille ne peut avoir le focus que si elle n'a pas de contrôle ou si tous ses contrôles visibles sont désactivés.

Ces événements se produisent également si vous envoyez une frappe de touche vers une feuille ou un contrôle au moyen d'une action SendKeys dans une macro ou de l'instruction SendKeys en Visual Basic.

Les événements KeyDown et KeyUp permettent généralement de reconnaître ou de faire la distinction entre :

•	Des touches de caractères étendues, telles que les touches de fonction.

•	Des touches de déplacement, telles qu'ORIGINE, FIN, PG.PRÉC, PG.SUIV, HAUT, BAS, DROITE, GAUCHE et TAB.

•	Des combinaisons de touches et des modificateurs du clavier standard (MAJ, CTRL ou ALT).

•	Du pavé numérique et des touches numériques du clavier.

Les événements KeyDown et KeyUp ne se produisent pas dans les circonstances suivantes :

•	L'utilisateur appuie sur la touche Entrée alors que la feuille active possède un bouton de commande dont la valeur de la propriété Default est True.

•	L'utilisateur appuie sur la touche Echap alors que la feuille active possède un bouton de commande dont la valeur de la propriété Cancel est True.

Les événements KeyDown et KeyPress se produisent lorsque vous appuyez sur une touche ANSI ou envoyez une touche ANSI. L'événement KeyUp se déclenche après tout événement destiné à un contrôle provoqué par la pression sur ou l'envoi de cette touche. Si une frappe de touche provoque le déplacement du focus d'un contrôle à un autre, l'événement KeyDown se déclenche pour le premier contrôle, alors que les événements KeyPress et KeyUp se déclenchent pour le second.

La séquence des événements relatifs au clavier est la suivante :

1.	KeyDown

2.	KeyPress

3.	KeyUp

Note  Les événements KeyDown et KeyUp ne s'appliquent qu'aux feuilles et aux contrôles d'une feuille. Pour interpréter des caractères ANSI, ou pour trouver le caractère ANSI correspondant à la touche appuyée, utilisez l'événement KeyPress.


KeyPress, événement

Survient lorsque l'utilisateur appuie sur une touche ANSI.

Syntaxe

Private Sub object_KeyPress( ByVal KeyANSI As MSForms.ReturnInteger)

La syntaxe de l'événement KeyPress comprend les éléments suivants :

Élément	Description
object	Objet valide.
KeyANSI	Une valeur entière représentant un code de touche numérique ANSI standard.
Remarques

L'événement KeyPress se produit lorsque l'utilisateur appuie sur une touche produisant un caractère imprimable (une touche ANSI) sur une feuille en cours d'exécution, alors que celle-ci ou l'un de ses contrôles a le focus. L'événement peut se produire avant ou après le relâchement de la touche. Cet événement se produit aussi si vous envoyez une frappe de touche ANSI à une feuille ou un contrôle utilisant l'action SendKeys dans une macro ou l'instruction SendKeys en Visual Basic.

Un événement KeyPress peut se déclencher lorsqu'on appuie sur l'une des touches suivantes :

•	Tout caractère imprimable du clavier.

•	CTRL associé à un caractère de l'alphabet standard.

•	CTRL associé à un caractère spécial.

•	ESPACE

•	ÉCHAP.

Un événement KeyPress ne se déclenche pas lorsque l’utilisateur appuie sur l’une des touches suivantes :

•	TAB.

•	ENTRÉE.

•	Une touche de direction.

•	Une touche qui déplace le focus d’un contrôle à un autre.

Note  RET.ARR. fait partie du jeu de caractères ANSI, mais SUPPR. non. La suppression d'un caractère dans un contrôle au moyen de RET.ARR. provoque un événement KeyPress, la suppression d'un caractère au moyen de SUPPR ne le fait pas.

Lorsqu'un utilisateur maintient appuyée une touche produisant un code de caractère ANSI, les événements KeyDown et KeyPress alternent de façon répétée. Lorsque l'utilisateur relâche la touche, l'événement KeyUp se déclenche. La feuille ou le contrôle ayant le focus reçoit toutes les frappes de touche. Une feuille ne peut avoir le focus que si elle n'a pas le contrôle ou si tous ses contrôles visibles sont désactivés.

L'action par défaut de l'événement KeyPress consiste à traiter le code d'événement qui correspond à la touche qui a été appuyée. KeyANSI indique le caractère ANSI correspondant à la touche ou combinaison de touches appuyée. L'événement KeyPress interprète les majuscules et minuscules de chaque caractère comme des codes de touche distincts et, donc, comme deux caractères distincts.

Pour répondre à l'état physique du clavier, ou pour gérer les frappes de touche non reconnues par l'événement KeyPress, telles que les touches de fonction, les touches de déplacement et toute combinaison de celle-ci avec des modificateurs du clavier (ALT, MAJ ou CTRL), utilisez les procédures des événements KeyDown et KeyUp.

La séquence des événements relatifs au clavier est la suivante :

1.	KeyDown

2.	KeyPress

3.	KeyUp


Layout, événement

Survient lorsqu'une feuille, un contrôle Frame ou MultiPage change de taille.

Syntaxe

Pour un contrôle multi page (Multipage)
Private Sub object_Layout( index As Long)

Pour tous les autres contrôles
Private Sub object_Layout( )

La syntaxe de l'événement Layout comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	Index de la page d'un contrôle MultiPage changeant de taille.
Remarques

L'action par défaut de l'événement Layout consiste à calculer de nouvelles positions pour les contrôles et à redessiner l'écran.

Un utilisateur peut déclencher l'événement Layout en modifiant la taille d'un contrôle.

Pour les contrôles gérant la propriété AutoSize, l'événement Layout est déclenché lorsque AutoSize modifie la taille du contrôle. C'est le cas lorsque l'utilisateur change la valeur d'une propriété affectant la taille d'un contrôle. Par exemple, l'augmentation de la taille de Font d'un contrôle TextBox ou d’un contrôle Label peut modifier sensiblement les dimensions du contrôle et déclencher un événement Layout.


MouseDown, MouseUp, événements

Interviennent lorsque l'utilisateur clique sur un bouton de la souris. MouseDown se produit lorsque l'utilisateur appuie sur le bouton de la souris ; MouseUp se produit lorsque l'utilisateur relâche le bouton de la souris.

Syntaxe

Pour un contrôle multi page (Multipage) ou barre d'onglets (TabStrip)
Private Sub object_MouseDown( index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Private Sub object_MouseUp( index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Pour d'autres contrôles
Private Sub object_MouseDown( ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Private Sub object_MouseUp( ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

La syntaxe des événements MouseDown et MouseUp comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	Index de la page ou de l’onglet d'un contrôle MultiPage ou d’un contrôle TabStrip associé à l'événement.
Button	Valeur entière identifiant le bouton de la souris ayant provoqué l'événement.
Shift	État de ALT, MAJ et CTRL.
X, Y	Position horizontale ou verticale en points, à partir du bord gauche ou supérieur de la feuille, d’un contrôle Frame, ou de l’objet Page.
Valeurs

Les valeurs de Button sont les suivantes :

Constante	Valeur	Description
fmButtonLeft	1	Le bouton gauche a été appuyé.
fmButtonRight	2	Le bouton droit a été appuyé.
fmButtonMiddle	4	Le bouton central a été appuyé.
Les valeurs de Shift sont les suivantes :

Valeur	Description
1	MAJ a été appuyé.
2	CTRL a été appuyé.
3	MAJ et CTRL ont été appuyés.
4	ALT a été appuyé.
5	ALT et MAJ ont été appuyés.
6	ALT et CTRL ont été appuyés.
7	ALT, MAJ et CTRL ont été appuyés.
Vous pouvez identifier des états distincts du clavier au moyen des constantes suivantes :

Constante	Valeur	Description
fmShiftMask	1	Masque pour détecter MAJ.
fmCtrlMask	2	Masque pour détecter CTRL.
fmAltMask	4	Masque pour détecter ALT.
Remarques

Pour un contrôle MultiPage, l'événement MouseDown se produit lorsque l'utilisateur appuie sur un bouton de la souris au-dessus du contrôle.

Pour un contrôle TabStrip, l'argument index identifie l’onglet sur laquelle l'utilisateur a cliqué. Un index de –1 indique que l'utilisateur n'a pas cliqué sur un l’onglet. Par exemple, en l'absence d’onglet dans le coin supérieur droit du contrôle, un clic sur le coin supérieur droit définit l'index à –1.

Pour une feuille, l'utilisateur peut générer des événements MouseDown et MouseUp lorsqu’il pointe dans une zone vierge, un sélecteur d'enregistrement ou une barre de défilement de la feuille et appuie sur un bouton de la souris et le relâche.

La séquence des événements relatifs à la souris est la suivante :

1.	MouseDown

2.	MouseUp

3.	Click

4.	DblClick

5.	MouseUp

Les procédures des événements MouseDown ou MouseUp spécifient les actions à exécuter lorsqu'un bouton de la souris est appuyé ou relâché. Les événements MouseDown et MouseUp vous permettent de faire la distinction entre les boutons gauche, droit et central de la souris. Vous pouvez aussi écrire du code pour des combinaisons souris-clavier utilisant les modificateurs du clavier ALT, MAJ et CTRL.

Si on appuie sur un bouton de la souris pendant que le pointeur est au-dessus d'une feuille ou d'un contrôle, cet objet "capture" la souris et reçoit tous les événements souris jusqu'au dernier événement MouseUp. Ceci implique que les coordonnées du pointeur souris X, Y renvoyées par un événement souris ne se trouvent pas toujours dans les limites de l'objet qui les reçoit.

Si on appuie successivement sur des boutons de la souris, l'objet qui capture la souris reçoit tous les événements souris successifs jusqu'au relâchement de tous les boutons.

Utilisez l'argument Shift pour identifier l'état de ALT, MAJ et CTRL lorsqu'un événement MouseDown ou MouseUp s'est déclenché. Par exemple, si ALT et CTRL ont été tous les deux appuyés, la valeur de Shift est 6.


MouseMove, événement

Survient lorsque l'utilisateur déplace la souris.

Syntaxe

Pour un contrôle multi page (Multipage) et barre d'onglets (TabStrip)
Private Sub object_MouseMove( index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Pour d'autres contrôles
Private Sub object_MouseMove( ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

La syntaxe de l'événement MouseMove comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de la page ou de l’onglet d'un contrôle MultiPage ou TabStrip associé à cet événement.
Button	Valeur entière qui identifie l'état des boutons de la souris.
Shift	Spécifie l'état de ALT, MAJ et CTRL.
X, Y	Position horizontale ou verticale, mesurée en points, depuis le bord gauche ou supérieure du contrôle.
Valeurs

L'argument index spécifie quelle page ou quel onglet a été cliqué. La valeur –1 indique que l'utilisateur n'a cliqué sur aucune page ou onglet.

Les valeurs de Button sont les suivantes :

Valeur	Description
0	Aucun bouton n'a été appuyé.
1	Le bouton gauche est appuyé.
2	Le bouton droit est appuyé.
3	Les boutons droit et gauche sont appuyés.
4	Le bouton central est appuyé.
5	Les boutons central et gauche sont appuyés.
6	Les boutons central et droit sont appuyés.
7	Les trois boutons sont appuyés.
Les valeurs de Shift sont les suivantes :

Valeur	Description
1	MAJ a été appuyé.
2	CTRL a été appuyé.
3	MAJ et CTRL ont été appuyés.
4	ALT a été appuyé.
5	ALT et MAJ ont été appuyés.
6	ALT et CTRL ont été appuyés.
7	ALT, MAJ et CTRL ont été appuyés.
Vous pouvez identifier de façon individuelle les états du clavier en utilisant les constantes suivantes :

Constante	Valeur	Description
fmShiftMask	1	Masque pour détecter MAJ.
fmCtrlMask	2	Masque pour détecter CTRL.
fmAltMask	4	Masque pour détecter ALT.
Remarques

L'événement MouseMove s'applique à la feuille, aux contrôle d'une feuille et aux étiquettes.

Les événements MouseMove sont générés en continu lorsque le pointeur de la souris se déplace sur les objets. A moins qu'un autre objet ait capturé la souris, un objet reconnaît un événement MouseMove lorsque la position de la souris est à l'intérieur de ses limites.

Le déplacement d'une feuille peut aussi générer un événement MouseMove, même si la souris est immobile. Les événements MouseMove sont générés lorsque la feuille se déplace sous le pointeur. Si une macro ou une procédure d'événement déplace une feuille en réponse à un événement MouseMove, l'événement peut générer continuellement (en cascade) des événement MouseMove.

Si deux contrôles sont très proches l'un de l'autre, et si vous déplacez rapidement le pointeur de la souris sur l'espace qui les sépare, l'événement MouseMove peut ne pas se déclencher dans cet espace. Dans ce cas, vous devez répondre à l'événement MouseMove dans les deux contrôles.

Vous pouvez utiliser la valeur renvoyée dans l'argument Button pour identifier l'état des boutons de souris.

Utilisez l'argument Shift pour identifier l'état de ALT, MAJ et CTRL lorsqu'un événement MouseMove se produit. Par exemple, si ALT et CTRL sont appuyés, la valeur de Shift est 6.

Note  Vous pouvez utiliser les procédures d’événement MouseDown et MouseUp pour répondre aux événements provoqués en appuyant sur les boutons de la souris et en les relâchant .


RemoveControl, événement

Survient lorsqu'un contrôle est supprimé du conteneur

Syntaxe

Pour un contrôle multi page (Multipage)
Private Sub object_RemoveControl( index As Long, ctrl As Control)

Pour tous les autres contrôles
Private Sub object_RemoveControl( ctrl As Control)

La syntaxe de l'événement RemoveControl comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de la page d'un contrôle MultiPage ayant contenu le contrôle supprimé.
ctrl	Contrôle supprimé.
Remarques

Cet événement se produit lorsqu'un contrôle est supprimé de la feuille, mais pas lorsque celui-ci est déchargé en lors de la fermeture d'une feuille.


Scroll, événement

Survient lorsque la zone de défilement est repositionnée.

Syntaxe

Pour un contrôle ScrollBar
Private Sub object_Scroll( )

Pour un contrôle multi page (Multipage)
Private Sub object_Scroll( index As Long, ActionX As fmScrollAction, ActionY As fmScrollAction, ByVal RequestDx As Single, ByVal RequestDy As Single, ByVal ActualDx As MSForms.ReturnSingle, ByVal ActualDy As MSForms.ReturnSingle)

Pour un contrôle cadre (Frame)
Private Sub object_Scroll( ActionX As fmScrollAction, ActionY As fmScrollAction, ByVal RequestDx As Single, ByVal RequestDy As Single, ByVal ActualDx As MSForms.ReturnSingle, ByVal ActualDy As MSForms.ReturnSingle)

La syntaxe de l'événement Scroll comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de la page d'un contrôle MultiPage associé à cet événement.
ActionX	Action s'étant produite dans la direction horizontale.
ActionY	Action s'étant produite dans la direction verticale.
RequestDx	La distance, en points, que doit parcourir la barre de défilement dans le sens horizontal.
RequestDy	La distance, en points, que doit parcourir la barre de défilement dans le sens vertical.
ActualDx	La distance, en points, parcourue par la barre de défilement dans le sens horizontal.
ActualDy	La distance, en points, parcourue par la barre de défilement dans le sens vertical.
Valeurs

Les valeurs de ActionX et ActionY sont les suivantes :

Constante	Valeur	Description
fmScrollActionNoChange	0	Aucun changement ne s'est produit.
fmScrollActionLineUp	1	Courte distance vers le haut sur une barre de défilement vertical ; courte distance vers la gauche sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur les touches haut ou gauche du clavier pour déplacer la barre de défilement.
fmScrollActionLineDown	2	Courte distance vers le bas sur une barre de défilement vertical ; courte distance vers la droite sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur les touches bas ou droite du clavier pour déplacer la barre de défilement.
fmScrollActionPageUp	3	Une page vers le haut sur une barre de défilement vertical ; une page vers la gauche sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur PG.PRÉC du clavier pour déplacer la barre de défilement.
fmScrollActionPageDown	4	Une page vers le bas sur une barre de défilement vertical ; une page vers la droite sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur PG.SUIV du clavier pour déplacer la barre de défilement.
fmScrollActionBegin	5	Haut d'une barre de défilement vertical. Extrémité gauche d'une barre de défilement vertical.
fmScrollActionEnd	6	Bas d'une barre de défilement vertical. Extrémité droite d'une barre de défilement vertical.
fmScrollActionPropertyChange	8	La valeur de l'une des propriétés ScrollTop ou ScrollLeft a changé. Le sens et la distance parcourue dépendent de la propriété qui a été modifiée et de la nouvelle valeur de cette propriété.
fmScrollActionControlRequest	9	Un contrôle a demandé à son conteneur de faire défiler. La distance parcourue dépend du contrôle spécifique et du conteneur impliqués.
fmScrollActionFocusRequest	10	L'utilisateur s'est déplacé sur un autre contrôle. La distance parcourue dépend de l'emplacement du contrôle sélectionné et a généralement pour effet de déplacer le contrôle sélectionné pour qu'il soit entièrement visible.
Remarques

Les événements Scroll associés à une feuille ou à un contrôle Frame ou Page renvoient les arguments suivants : ActionX, ActionY, ActualX et ActualY. ActionX et ActionY identifient l'action qui s'est produite. ActualX et ActualY identifient la distance parcourue par la zone de défilement.

L'action par défaut consiste à calculer la nouvelle position de la zone de défilement, puis à faire défiler vers cette position.

Vous pouvez générer un événement Scroll en créant une méthode Scroll pour une feuille ou un contrôle Frame ou Page. Les utilisateurs peuvent provoquer des événements Scroll en déplaçant la barre de défilement.

L’événement Scroll associé à un contrôle ScrollBar autonome indique que l’utilisateur a déplacé le curseur de défilement dans l’une ou l’autre des directions. Cet événement n’est pas généré si la valeur du contrôle ScrollBar est modifiée dans le code ou par l’utilisateur qui aurait cliqué sur le ScrollBar ailleurs que sur le curseur de défilement.


SpinDown, SpinUp, événements

SpinDown se déclenche lorsque l'utilisateur clique sur la flèche inférieure ou gauche du compteur. SpinUp intervient lorsque l'utilisateur clique sur la flèche supérieure ou droite du compteur.

Syntaxe

Private Sub object_SpinDown( )

Private Sub object_SpinUp( )

La syntaxe des événements SpinDown et SpinUp comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

L'événement SpinDown décrémente la propriété Value. L'événement SpinUp incrémente la propriété Value.


Zoom, événement

Survient lorsqu'une valeur de la propriété Zoom change.

Syntaxe

Pour un contrôle cadre (Frame)
Private Sub object_Zoom( Percent As Integer)

Pour contrôle multi page (Multipage)
Private Sub object_Zoom( index As Long, Percent As Integer)

La syntaxe de l'événement Zoom comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
index	Index de la page d'un contrôle MultiPage associé à cet événement.
Percent	Pourcentage du zoom à effectuer sur la feuille ? Les valeurs autorisées sont comprises entre 10 et 400 pour cent.
Remarques

La valeur de la propriété Zoom identifie le changement apporté à la taille de la feuille ou l’objet Page. La valeur de la propriété indique quel devrait être le changement de la taille du contrôle par rapport à sa taille actuelle. Les valeurs inférieures à 100 réduisent la taille affichée de la feuille ; les valeurs supérieurs à 100 augmentent la taille affichée de la feuille.

Vous pouvez définir cette propriété sur n'importe quel nombre entier compris entre 10 et 400.


Add, méthode

Ajoute ou insère un objet Tab ou Page dans un contrôle TabStrip ou MultiPage, ou ajoute un contrôle par son identifiant de programmation (ProgID) sur une page ou une feuille.

Syntaxe

Pour un contrôle multi page (Multipage) et barre d'onglets (TabStrip)
Set Object = object.Add( [ Name [,  Caption [,  index]]])

Pour d'autres contrôles
Set Control = object.Add(  ProgID [,  Name [,  Visible]])

La syntaxe de la méthode Add comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
Name	Facultatif. Spécifie le nom de l'objet en cours d'ajout. En l'absence de nom spécifié, le système génère un nom par défaut en fonction des règles de l'application dans laquelle la feuille est utilisée.
Caption	Facultatif. Spécifie la légende devant apparaître sur un onglet ou un contrôle. En l'absence de légende spécifiée, le système en génère une par défaut en fonction des règles de l'application dans laquelle la feuille est utilisée.
index	Facultatif. Identifie la position d'une page ou d’un onglet à l'intérieur d'une collection Pages ou Tabs. En l'absence d'index spécifié, le système ajoute la page ou onglet à la fin de la collection Pages ou Tabs et affecte la valeur d'index appropriée.
ProgID	Identifiant de programmation. Chaîne de texte sans espaces identifiant une classe d'objets. La syntaxe standard d'un ProgID est <Vendor>.<Component>.<Version>. Un ProgID est mappé sur un identifiant de classe (CLSID).
Visible	Facultatif. True si l'objet est visible (par défaut). False si l'objet est masqué.
Valeurs

Les valeurs ProgID pour chacun des contrôles sont les suivantes :

CheckBox	Forms.CheckBox.1
ComboBox	Forms.ComboBox.1
CommandButton	Forms.CommandButton.1
Frame	Forms.Frame.1
Image	Forms.Image.1
Label	Forms.Label.1
ListBox	Forms.ListBox.1
MultiPage	Forms.MultiPage.1
OptionButton	Forms.OptionButton.1
ScrollBar	Forms.ScrollBar.1
SpinButton	Forms.SpinButton.1
TabStrip	Forms.TabStrip.1
TextBox	Forms.TextBox.1
ToggleButton	Forms.ToggleButton.1
Remarques

Pour un contrôle MultiPage, la méthode Add renvoie un objet Page. Pour un contrôle TabStrip, elle renvoie un objet Tab. La valeur d'index pour le premier objet Page ou Tab d'une collection est 0, la valeur pour le deuxième objet Page ou Tab est 1, et ainsi de suite.

Pour la collection Controls d’un objet, la méthode Add renvoie un contrôle correspondant au ProgID spécifié. L'événement AddControl se déclenche après l'ajout du contrôle.

La syntaxe suivante renvoie la propriété Text du contrôle ajouté lors de la création :

userform1.thebox.text

Si vous ajoutez un contrôle à l’exécution, vous devez utiliser un point d’exclamation pour faire référence aux propriétés du contrôle. Par exemple, pour renvoyer la propriété Text d’un contrôle ajouté à l’exécution, appliquez la syntaxe suivante :

userform1!thebox.text

Note  Vous ne pouvez changer une propriété Name du contrôle au moment de l'exécution, que si vous ajoutez ce contrôle au moment de l'exécution avec la méthode Add.


AddItem, méthode

Ajoute un élément à la liste d’une zone de liste ou d’une liste modifiable à colonne unique. Ajoute une ligne à la liste d’une zone de liste ou d’une liste modifiable multicolonnes.

Syntaxe

Variant = object.AddItem( [ item [,  varIndex]])

La syntaxe de la méthode AddItem comprend les éléments suivants :

Élément	Description
object	Objet valide.
item	Facultatif. Spécifie l’élément ou la ligne à ajouter. Le numéro du premier élément ou de la première ligne est 0 ; le numéro du deuxième élément ou de la deuxième ligne est 1, et ainsi de suite.
varIndex	Facultatif. Nombre entier spécifiant la position d’insertion du nouvel élément ou de la nouvelle ligne.
Remarques

Si vous donnez une valeur valide pour varIndex, la méthode AddItem place l'élément ou la ligne à cette position dans la liste. Si vous omettez varIndex, la méthode ajoute l'élément ou la ligne en fin de liste.

La valeur de varIndex doit être supérieure à celle de la propriété ListCount.

Pour des contrôles ListBox ou ComboBox multicolonnes, AddItem ajoute une ligne entière, c’est-à-dire qu’elle insère un élément à chaque colonne du contrôle. Pour affecter des valeurs à un élément au-delà de la première colonne, utilisez la propriété List ou Column et précisez la ligne et la colonne de l’élément.

La dépendance du contrôle à des données entraîne l’échec de la méthode AddItem.

Note  Vous pouvez ajouter plusieurs lignes à la fois à un contrôle ComboBox ou ListBox au moyen de List.


Clear, méthode

Retire tous les objets d'un objet ou d'une collection.

Syntaxe

object.Clear

La syntaxe de la méthode Clear comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Pour un contrôle MultiPage ou TabStrip, la méthode Clear supprime des pages ou des onglets distincts.

Pour un contrôle ListBox ou ComboBox, Clear retient toutes les entrées de la liste.

Pour une collection Controls, Clear supprime les contrôles créés au moment de l'exécution avec la méthode Add. L'utilisation de Clear sur des contrôles créés au moment de la conception provoque une erreur.

La dépendance du contrôle à des données entraîne l’échec de la méthode Clear.


Copy, méthode

Copie le contenu d'un objet dans le Presse-papiers.

Syntaxe

object.Copy

La syntaxe de la méthode Copy comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Le contenu orignal reste sur l'objet.

Le contenu réel copié dépend de l'objet. Par exemple, dans un objet Page, la méthode Copy copie le ou les contrôles actuellement sélectionnés. Sur une contrôle TextBox ou ComboBox, elle copie le texte actuellement sélectionné.

L'utilisation de Copy pour une feuille, un contrôle Frame ou un objet Page copie le contrôle actif.


RedoAction méthode
Cut, méthode

Retire les informations sélectionnées d'un objet et les transfère dans le Presse-papiers.

Syntaxe

object.Cut

La syntaxe de la méthode Cut comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Pour un contrôle ComboBox ou TextBox, la méthode Cut retire du contrôle le texte actuellement sélectionné et le transfère dans le Presse-papiers. Cette méthode ne nécessite pas la présence du focus sur le contrôle.

Sur un objet Page, un contrôle Frame ou une feuille, la méthode Cut retire les contrôles actuellement sélectionnés et les transfère dans le Presse-papiers. Cette méthode ne retire que les contrôles créés au moment de l'exécution.


DropDown, méthode

Affiche une portion de liste d'un contrôle ComboBox.

Syntaxe

object.DropDown

La syntaxe de la méthode DropDown comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Utilisez la méthode DropDown pour ouvrir une liste déroulante.


GetFormat, méthode

Renvoie un nombre entier indiquant la présence éventuelle d'un format spécifique sur le DataObject.

Syntaxe

Boolean = object.GetFormat( format)

La syntaxe de la méthode GetFormat comprend les éléments suivants :

Élément	Description
object	Objet valide.
format	Nombre entier ou chaîne spécifiant un format particulier éventuellement présent dans DataObject. Si ce format existe effectivement, GetFormat renvoie la valeur True..
Valeurs

Les valeurs de format sont les suivantes :

Valeur	Description
1	Format texte.
Chaîne ou tout entier différent de 1	Format DataObject défini par l’utilisateur passé de SetText à DataObject.
Remarques

La méthode GetFormat recherche un format dans la liste actuelle des formats de l’objet DataObject. Si le format est présent dans la liste de l’objet DataObject, la méthode GetFormat renvoie True ; dans le cas contraire, elle renvoie False.

L’objet DataObject ne gère actuellement que les formats texte.


GetFromClipboard, méthode

Copie des données du Presse-papiers vers un objet DataObject.

Syntaxe

String = object.GetFromClipboard( )

La syntaxe de la méthode GetFromClipboard comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
Remarques

L’objet DataObject peut contenir plusieurs éléments de données, mais chaque élément doit être  dans un format différent. Par exemple, l’objet DataObject peut inclure un élément de texte et un élément dans un format personnalisé, mais ne peut contenir deux éléments de texte.


GetText, méthode

Récupère une chaîne de texte de l’objet DataObject en utilisant un format spécifié.

Syntaxe

String = object.GetText( [ format])

La syntaxe de la méthode GetText comporte les éléments suivants :

Élément	Description
object	Nom d’objet valide.
format	Facultatif. Chaîne ou entier indiquant le format des données à récupérer de l’objet DataObject.
Valeurs

Les valeurs de format sont les suivantes :

Valeur	Description
1	Format texte.
Chaîne ou entier différent de 1	Format DataObject défini par l’utilisateur passé de SetText à DataObject.
Remarques

L’objet DataObject supporte des formats multiples, mais n’accepte qu’un élément de données de chaque format. Par exemple, l’objet DataObject peut contenir un élément de texte et un élément dans un format personnalisé, mais ne peut inclure deux éléments de texte.

Si aucun format n’est spécifié, la méthode GetText récupère des informations dans le format texte à partir de l’objet DataObject.


Item, méthode

Renvoie un membre d'une collection, par sa position ou par son nom.

Syntaxe

Set Object = object.Item(  collectionindex)

La syntaxe de la méthode Item comprend les éléments suivants :

Élément	Description
object	Objet valide.
collectionindex	Position d'un membre ou index dans une collection.
Valeurs

L’argument collectionindex peut être une chaîne ou un nombre entier. S'il s'agit d'une chaîne, elle doit correspondre à un nom de membre valide. S'il s'agit d'un nombre entier, sa valeur minimale est 0 et sa valeur maximale est le nombre d'éléments de la collection moins un.

Remarques

Si un index ou un nom invalide est spécifié, une erreur se produit.


Move, méthode

Déplace une feuille ou un contrôle, ou déplace tous les contrôles de la collection Controls.

Syntaxe

Pour une feuille ou un contrôle
object.Move( [Left [,  Top [,  Width [,  Height [,  Layout]]]]])

Pour une collection Controls
object.Move( X, Y)

La syntaxe de la méthode Move comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
Left	Facultatif. Valeur en simple précision, en points, indiquant la coordonnée horizontale du bord gauche de l'objet.
Top	Facultatif. Valeur en simple précision, en points, indiquant la coordonnée vertical du bord supérieur de l'objet.
Width	Facultatif. Valeur en simple précision, en points, indiquant la largeur de l'objet.
Height	Facultatif. Valeur en simple précision, en points, indiquant la hauteur de l'objet.
Layout	Facultatif. Valeur booléenne indiquant si l'événement Layout est amorcé pour le parent du contrôle suite au déplacement. False est la valeur par défaut.
X, Y	Valeur en précision simple, en points, indiquant le changement des coordonnées horizontale et verticale courantes pour chaque contrôle de la collection Controls.
Valeurs

Les valeurs maximale et minimale des arguments Left, Top, Width, Height, X et Y varient en fonction de l’application.

Remarques

Pour une feuille ou un contrôle, vous pouvez déplacer une sélection vers une emplacement spécifique par rapport aux bords de la feuille contenant cette sélection.

Vous pouvez utiliser des arguments nommés, ou saisir ces arguments par position. Si vous utilisez des arguments nommés, vous pouvez les énumérer dans un ordre quelconque. Dans le cas contraire, vous devez saisir les arguments dans l'ordre indiqué, en utilisant des virgules pour indiquer la position relative des arguments que vous ne spécifiez pas. Les arguments non spécifiés restent inchangés.

Pour la collection Controls, vous pouvez déplacer tous les contrôles de cette collection d’une distance spécifique sur une feuille ou sur un contrôle Frame ou Page.


Paste, méthode

Transfère le contenu du Presse-papiers vers un objet.

Syntaxe

object.Paste

La syntaxe de la méthode Paste comprend les éléments suivants :

Élément	Description
object	Nom d’objet valide.
Remarques

Les données collées dans un contrôle ComboBox ou TextBox sont traitées comme du texte.

Lorsque vous utilisez la méthode Paste avec une feuille, vous pouvez coller tout objet sur cette feuille.


PutInClipboard, méthode

Déplace les donnée de l’objet DataObject vers le Presse-papiers.

Syntaxe

object.PutInClipboard

La syntaxe de la méthode PutInClipboard comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La méthode PutInClipboard remplace le contenu du Presse-papiers par celui au format texte de DataObject.


RedoAction, méthode

Inverse l'effet de la dernière action Annuler.

Syntaxe

Boolean = object.RedoAction

La syntaxe de la méthode RedoAction comprend les éléments suivants :

Élément	Description
object	Nom d’objet valide.
Remarques

Rétablit la dernière action Annuler, qui n’est pas nécessairement la dernière action prise. Toutes les actions ne peuvent être annulées.

Par exemple, après le collage de texte dans le contrôle TextBox et la sélection de la commande Annuler pour retirer ce texte, vous pouvez sélectionner la commande Rétablir pour recoller le texte.

Note  Si la valeur de la propriété CanRedo est False, la commande Rétablir n'est pas disponible dans l'interface utilisateur, et la méthode RedoAction est invalide dans le code.

RedoAction renvoie la valeur True en cas de succès.


Remove, méthode

Retire un membre d'une collection ; ou retire un contrôle contenu dans un contrôle Frame, un objet Page, ou une feuille.

Syntaxe

object.Remove(  collectionindex)

La syntaxe de la méthode Remove comprend les éléments suivants :

Élément	Description
object	Objet valide.
collectionindex	Position d'un membre, ou index, à l'intérieur d'une collection. Des valeurs numériques tout comme des valeurs de chaînes sont acceptables. Si la valeur est un nombre, la valeur minimale est zéro, et la valeur maximale est le nombre de membres dans une collection moins un. Si la valeur est une chaîne, elle doit correspondre à un nom de membre valide.
Remarques

Cette méthode supprime tout contrôle ayant été ajouté au moment de l'exécution. Toutefois, la tentative de supprimer un contrôle ayant été ajouté au moment de la conception provoque une erreur.


RemoveItem, méthode

Retire une ligne d'une zone de liste ou d'une liste modifiable.

Syntaxe

Boolean = object.RemoveItem(  index)

La syntaxe de la méthode RemoveItem comprend les éléments suivants :

Élément	Description
object	Objet valide.
Index	Spécifie la ligne à supprimer. Le nombre de la première ligne est 0 ; le nombre de la seconde ligne est 1, et ainsi de suite.
Cette méthode ne retire pas la ligne de la liste si le contrôle ListBox est lié aux données (c'est-à-dire, lorsque la propriété RowSource spécifie une source de données pour le contrôle ListBox).


Repaint, méthode

Met à jour l'affichage en redessinant la feuille ou la page.

Syntaxe

Boolean = object.Repaint

La syntaxe de la méthode Repaint comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La méthode Repaint est utile si le contenu ou l'aspect d'un objet change de façon significative, et si vous ne voulez pas attendre que le système redessine automatiquement la zone.


Scroll, méthode

Déplace la barre de défilement d’un objet.

Syntaxe

object.Scroll( [ ActionX [,  ActionY]])

La syntaxe de la méthode Scroll comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
ActionX	Facultatif. Identifie l'action devant se produire dans le sens horizontal.
ActionY	Facultatif. Identifie l'action devant se produire dans le sens vertical.
Valeurs

Les valeurs de ActionX et ActionY sont les suivantes :

Constante	Valeur	Description
fmScrollActionNoChange	0	Ne fait pas défiler dans le sens spécifié.
fmScrollActionLineUp	1	Se déplace vers le haut sur une barre de défilement vertical ou vers la gauche sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur les touches haut ou gauche du clavier pour déplacer la barre de défilement.
fmScrollActionLineDown	2	Se déplace vers le bas sur une barre de défilement vertical ou vers la droite sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur les touches bas ou droite du clavier pour déplacer la barre de défilement.
fmScrollActionPageUp	3	Se déplace d'une page vers le haut sur une barre de défilement vertical ou d'une page vers la gauche sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur PG.PRÉC du clavier pour déplacer la barre de défilement.
fmScrollActionPageDown	4	Se déplace d'une page vers le bas sur une barre de défilement vertical ou d'une page vers la droite sur une barre de défilement horizontal. Le déplacement est équivalent à celui d'une pression sur PG.SUIV du clavier pour déplacer la barre de défilement.
fmScrollActionBegin	5	Se déplace vers le haut d'une barre de défilement vertical ou vers l'extrémité gauche d'une barre de défilement horizontal.
fmScrollActionEnd	6	Se déplace vers le bas d'une barre de défilement vertical ou vers l'extrémité droite d'une barre de défilement horizontal.
Remarques

La méthode Scroll place des barres de défilement sur une feuille ou sur des contrôles Frame ou Page plus larges que leur zone d’affichage. Cette méthode ne s’applique ni au contrôle ScrollBar indépendant, ni aux barres de défilement affichées dans un TextBox.


SetDefaultTabOrder, méthode

Définit la propriété TabIndex de chaque contrôle d'une feuille, en utilisant par défaut un ordre de tabulation de haut en bas et de gauche à droite.

Syntaxe

object.SetDefaultTabOrder

La syntaxe de la méthode SetDefaultTabOrder comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Microsoft Forms définit l’ordre de tabulation de gauche à droite en commençant par les contrôles situés dans l’angle supérieur gauche de la feuille. Les contrôles les plus proches du bord gauche de la feuille figurent en premier dans l’ordre de tabulation. Si plusieurs contrôles se trouvent à égale distance du bord gauche de la feuille, l’ordre est défini de haut en bas.


SetFocus, méthode

Déplace le focus sur cette occurrence de l'objet.

Syntaxe

object.SetFocus

La syntaxe de la méthode SetFocus comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

En cas d'échec de la définition du focus, celui-ci retourne sur l'objet précédent et une erreur est générée.

Par défaut, la définition du focus sur un contrôle n'active pas la fenêtre d'un contrôle et ne le place pas non plus en avant-plan des autres contrôles.

La méthode SetFocus est valide pour un contrôle Frame vide ou contenant d’autres contrôles. Le contrôle Frame vide prend lui-même le focus et les événements clavier suivants s’y appliqueront. Dans un Frame contenant des contrôles, le focus se placera sur le premier contrôle du Frame, et les événements clavier suivants s’appliqueront à ce contrôle.


SetText, méthode

Copie une chaîne de texte dans DataObject selon un format spécifié.

Syntaxe

object.SetText(  StoreData [,  format])

La syntaxe de la méthode SetText comprend les éléments suivants :

Élément	Description
object	Objet valide.
StoreData	Définit les données à stocker dans DataObject.
format	Facultatif. Nombre entier ou chaîne spécifiant le format de StoreData. Lors de la récupération de données du DataObject, le format identifie les données à récupérer..
Valeurs

Les valeurs de format sont les suivantes :

Valeur	Description
1	Format texte.
Chaîne ou entier différent de 1	Format DataObject défini par l’utilisateur.
Remarques

DataObject stocke les données selon leur format. Lorsque l'utilisateur fournit une chaîne, DataObject enregistre le texte sous le format spécifié.

Si DataObject contient des données au même format que les nouvelles données, ces dernières remplacent les données présentes dans DataObject. Si les nouvelles données sont dans un autre format, les données et le format nouveaux sont ajoutés à DataObject, parallèlement aux données existantes.

En l'absence de format spécifié, la méthode SetText affecte le format texte à la chaîne de texte. Si un nouveau format est spécifié, DataObject  enregistre le nouveau format dans le système.


StartDrag, méthode

Déclenche une opération glisser-déplacer pour un DataObject.

Syntaxe

fmDropEffect=object.StartDrag([Effect as fmDropEffect])

La syntaxe de la méthode StartDrag comprend les éléments suivants :

Élément	Description
Object	Objet valide.
Effect	Facultatif. Effet de l'opération déplacer sur le contrôle cible.
Valeurs

Les valeurs de Effect sont les suivantes :

Constante	Valeur	Description
fmDropEffectNone	0	Ne copie, ni ne déplace la source vers la cible.
fmDropEffectCopy	1	Copie la source vers la cible .
fmDropEffectMove	2	Déplace la source de déplacement vers la cible de déplacement.
fmDropEffectCopyOrMove	3	Copies ou Déplace la source de déplacement vers la cible de déplacement.
Remarques

L'action de déplacement commence à la position actuelle du pointeur de la souris avec l'état de clavier actuel et se termine lorsque l'utilisateur relâche la souris. L'effet de l'opération glisser-déplacer dépend de celui choisi pour la cible.

Par exemple, un événement MouseMove du contrôle peut inclure la méthode StartDrag. Quand l'utilisateur clique sur le contrôle et déplace la souris, le pointeur de celle-ci se modifie pour indiquer si l’argument Effect est valide pour la cible.


UndoAction, méthode

Inverse la dernière action qui accepte la commande Annuler.

Syntaxe

Boolean = object.UndoAction

La syntaxe de la méthode UndoAction comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La commande Annuler de l'interface utilisateur utilise la méthode UndoAction. Par exemple, si vous collez du texte dans le contrôle TextBox, vous pouvez utiliser UndoAction pour retirer ce texte et restaurer le contenu précédent du contrôle TextBox.

Toutes les actions utilisateur ne peuvent pas être annulées. Si une action ne peut pas être annulée, la commande Annuler est indisponible à la suite de cette action.

Note  Si la propriété CanUndo contient la valeur False, la commande Undo n'est pas disponible dans l'interface utilisateur et la méthode UndoAction n'est pas valide dans le code.

Si la méthode UndoAction est appliqué à une feuille, toutes les modifications de l'enregistrement actuel sont perdues. Si la méthode UndoAction est appliqué à un contrôle, seul celui-ci est affecté.

Vous devez appliquer cette méthode avant la mise à jour de la feuille ou du contrôle. Vous pouvez inclure cette méthode dans un événement BeforeUpdate d'une feuille ou un événement Change d'un contrôle.

UndoAction équivaut à utiliser l'instruction SendKeys pour envoyer la valeur de ÉCHAP dans une procédure d'événement.


ZOrder, méthode

Place l'objet à l'avant-plan ou l'arrière-plan de la hiérarchie d’affichage.

Syntaxe

object.ZOrder( [ zPosition])

La syntaxe de la méthode ZOrder comprend les éléments suivants :

Élément	Description
object	Objet valide.
zPosition	Facultatif. Position d'un contrôle, à l'avant ou à l'arrière-plan, dans la hiérarchie d’affichage d'un conteneur.
Valeurs

Les valeurs de zPosition sont les suivantes :

Constante	Valeur	Description
fmTop	0	Place le contrôle à l'avant-plan de la hiérarchie d’affichage. Le contrôle apparaît au-dessus des autres contrôles (par défaut).
fmBottom	1	Place le contrôle à l'arrière-plan de la hiérarchie d’affichage. Le contrôle apparaît en dessous des autres contrôles.
Remarques

La hiérarchie d’affichage détermine la façon dont les fenêtres et contrôles sont empilés lorsqu'ils sont présentés à l'utilisateur. Les éléments à l'arrière-plan de la hiérarchie sont recouverts par des éléments plus proches ; les éléments à l'avant-plan de la hiérarchie d’affichage apparaissent au-dessus des éléments à l'arrière. En l'absence de l'argument zPosition, l'objet est amené à l'avant-plan.

En mode conception, les commandes Premier plan ou Arrière-plan définissent la hiérarchie. Premier plan revient à utiliser la méthode ZOrder et à placer l'objet en haut de la hiérarchie. Arrière-plan revient à utiliser ZOrder à placer l'objet en bas de la hiérarchie.

Cette méthode n'affecte pas le contenu ou la séquence des contrôles de la collection Controls.

Note   Il est impossible d’annuler ou de refaire des commandes de superposition, telles que Premier plan ou Arrière-plan. Par exemple, si vous sélectionnez un objet et cliquez sur Arrière-plan dans le menu contextuel, vous ne pourrez ni annuler ni refaire cette action.


Accelerator, propriété

Renvoie ou définit la touche d'accès rapide pour un contrôle.

Syntaxe

object.Accelerator [= String]

La syntaxe de la propriété Accelerator comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Caractère à utiliser comme touche d'accès rapide.
Remarques

Pour définir une touche d'accès rapide, tapez un seul caractère pour la propriété Accelerator. Vous pouvez définir Accelerator dans la feuille de propriétés du contrôle ou dans le code. Si la valeur de cette propriété contient plusieurs caractères, seul le premier caractère de la chaîne est pris en compte.

Lorsqu'on utilise une touche d'accès rapide, il n'y a pas de signal visuel (autre que le focus) pour indiquer que le contrôle a déclenché l'événement Click. Par exemple, si la touche d'accès rapide s'applique à un contrôle CommandButton, l'utilisateur ne voit pas le bouton appuyé dans l'interface. Toutefois, le bouton reçoit le focus, lorsque l'utilisateur appuie sur la touche d'accès rapide.

Si l'accès rapide s'applique à un contrôle Label, le contrôle suivant le Label dans l'ordre de tabulation, plutôt que le contrôle Label lui-même, reçoit le focus.


ActiveControl, propriété

Identifie et permet la manipulation du contrôle ayant le focus.

Syntaxe

object.ActiveControl

La syntaxe de la propriété ActiveControl comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La propriété ActiveControl est en lecture seule et définie lorsque vous sélectionnez un contrôle dans l'interface. Vous pouvez utiliser ActiveControl en remplacement du nom du contrôle lors de la définition des propriétés ou de l'appel de méthodes.


Alignment, propriété

Spécifie la position d'un contrôle par rapport à sa légende.

Syntaxe

object.Alignment [= fmAlignment]

La syntaxe de la propriété Alignment comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmAlignment	Facultatif. Position de la légende.
Valeurs

Les valeurs de fmAlignment sont les suivantes :

Constante	Valeur	Description
fmAlignmentLeft	0	Place la légende à gauche du contrôle.
fmAlignmentRight	1	Place la légende à droite du contrôle (par défaut).
Remarques

Le texte de la légende d'un contrôle est aligné à gauche.

Note   Bien que la propriété Alignment existe dans ToggleButton, elle est désactivée. Vous ne pouvez définir ou renvoyer une valeur pour cette propriété dans ToggleButton.


AutoSize, propriété

Spécifie si un objet se redimensionne automatiquement pour afficher la totalité de son contenu.

Syntaxe

object.AutoSize [= Boolean]

La syntaxe de la propriété AutoSize comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Si le contrôle est redimensionné
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Redimensionne automatiquement le contrôle pour afficher la totalité de son contenu.
False	Maintient la dimension du contrôle constante. Le contenu est découpé lorsqu'il dépasse la zone du contrôle (par défaut).
Remarques

Pour les contrôles ayant une légende, la propriété AutoSize précise si le contrôle s'ajuste automatiquement pour afficher toute la légende.

Pour les contrôles sans légende, cette propriété spécifie si ce contrôle s'ajuste automatiquement pour afficher les informations qu'il contient. Dans un contrôle ComboBox, par exemple, la définition de AutoSize sur True détermine automatiquement la largeur de la zone d'affichage pour correspondre à la longueur du texte courant.

Pour les zones de texte à ligne unique, la définition de AutoSize sur True détermine automatiquement la largeur de la zone d'affichage pour correspondre à la longueur du texte de la zone de texte.

Pour une zone de texte à plusieurs lignes ne contenant pas de texte, la définition de AutoSize sur True affiche automatiquement le texte sous forme de colonne. La largeur de la colonne de texte est déterminée pour accueillir la lettre la plus large de cette taille des caractères. La hauteur de la colonne de texte est définie pour afficher tout le texte du contrôle TextBox.

Pour une zone de texte à plusieurs lignes contenant du texte, la définition de AutoSize sur True agrandit automatiquement le TextBox verticalement pour afficher la totalité du texte. La largeur de TextBox reste inchangée.

Note   Si vous modifiez manuellement la taille d’un contrôle alors que AutoSize est défini sur True, la modification manuelle l’emporte sur le réglage de AutoSize.


AutoTab, propriété

Spécifie si une tabulation automatique se déclenche lorsqu'un utilisateur saisit le nombre maximum autorisé de caractères dans un contrôle TextBox ou dans la zone de texte d’un ComboBox.

Syntaxe

object.AutoTab [= Boolean]

La syntaxe de la propriété AutoTab comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si une tabulation automatique se produit.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Une tabulation se produit.
False	Aucune tabulation se produit (par défaut).
Remarques

La propriété MaxLength spécifie le nombre maximal de caractères autorisé dans un contrôle TextBox ou dans la zone de texte d’un ComboBox.

Vous pouvez spécifier la propriété AutoTab pour un contrôle TextBox ou ComboBox d'une feuille pour laquelle vous tapez généralement un nombre défini de caractères. Lorsqu'un utilisateur tape le nombre maximal de caractères, le focus se déplace automatiquement vers le prochain contrôle dans l'ordre de tabulation. Par exemple, si un contrôle TextBox affiche des numéros de catalogue ayant toujours cinq caractères, vous pouvez utiliser MaxLength pour spécifier le nombre maximal de caractères à saisir dans le contrôle TextBox et AutoTab pour passer automatiquement au contrôle suivant après la saisie de cinq caractères par l'utilisateur.

Le support d’AutoTab varie en fonction de l’application. Tous les conteneurs n’acceptent pas cette propriété.


AutoWordSelect, propriété

Spécifie si un mot ou un caractère est l'unité de base utilisée pour étendre une sélection.

Syntaxe

object.AutoWordSelect [= Boolean]

La syntaxe de la propriété AutoWordSelect comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie l'unité de base utilisée pour étendre une sélection.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Utilise un mot comme unité de base (par défaut).
False	Utilise un caractère comme unité de base.
Remarques

La propriété AutoWordSelect spécifie la façon dont une sélection s'étend ou se contracte dans la zone d'édition d'un contrôle TextBox ou ComboBox.

Si l'utilisateur place le point d'insertion au milieu d'un mot, puis étend la sélection alors que la valeur de la propriété AutoWordSelect est True, la sélection inclut le mot entier.


BackColor, propriété

Spécifie la couleur de fond d'un objet.

Syntaxe

object.BackColor [= Long]

La syntaxe de la propriété BackColor comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Valeur ou constante déterminant la couleur de fond d'un objet.
Valeurs

Vous pouvez utiliser tout nombre entier représentant une couleur valide. Vous pouvez également spécifier une couleur au moyen de la fonction RGB avec des composants de couleur rouge, vert et bleu. La valeur de chaque composant de couleur est un nombre entier compris entre zéro et 255. Par exemple, vous pouvez spécifier un bleu sarcelle sous la forme de la valeur entière 4966415 ou les composants de couleur rouge, vert et bleu sont 15, 200, 75.

Remarques

Vous ne pouvez voir la couleur de fond d'un objet que si la valeur de la propriété BackStyle est fmBackStyleOpaque.


BackStyle, propriété

Renvoie ou définit le style de fond pour un objet.

Syntaxe

object.BackStyle [= fmBackStyle]

La syntaxe de la propriété BackStyle comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmBackStyle	Facultatif. Spécifie le fond du contrôle.
Valeurs

Les valeurs de fmBackStyle sont les suivantes :

Constante	Valeur	Description
fmBackStyleTransparent	0	Le fond est transparent.
fmBackStyleOpaque	1	Le fond est opaque (par défaut).
Remarques

La propriété BackStyle détermine si un fond est transparent ou pas . Si BackStyle contient la valeur fmBackStyleOpaque, le contrôle n'est pas transparent et vous ne voyez rien derrière le contrôle d'une feuille. Si BackStyle contient la valeur fmBackStyleTransparent, vous pouvez voir à travers le contrôle de la feuille tout se qui se trouve derrière celui-ci.

Note  BackStyle n'affecte pas la transparence des images bitmap. Vous devez utiliser un éditeur d'image, tel que Paintbrush, pour rendre une image bitmap transparente. Tous les contrôles ne gèrent pas des images bitmap transparentes.


Bold, Italic, Size, StrikeThrough, Underline, Weight, propriétés

Spécifie les attributs visuels de texte sur une feuille affichée ou imprimée.

Syntaxe

object.Bold [= Boolean]

object.Italic [= Boolean]

object.Size [= Currency]

object.StrikeThrough [= Boolean]

object.Underline [= Boolean]

object.Weight [= Integer]

La syntaxe des propriétés Bold, Italic, Size, StrikeThrough, Underline et Weight comprend les éléments suivants :

Élément	Description
object	Nom d'objet valide.
Boolean	Facultatif. Spécifie le style des caractères.
Currency	Facultatif. Nombre indiquant la taille des caractères.
Integer	Facultatif. Spécifie le style des caractères.
Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le texte a les attributs spécifiés (c'est-à-dire gras, italique, taille, barré ou souligné, ou couleur).
False	Le texte n'a pas les attributs spécifiés (par défaut).
La propriété Weight accepte des valeurs entre 0 et 1000. Une valeur de zéro permet au système de choisir la graisse la plus appropriée. Une valeur entre 1 et 1000 indique une épaisseur spécifique, 1 représentant le type le plus léger et 1000 représentant le type le plus sombre.

Remarques

Ces propriétés définissent les caractéristiques visuelles du texte. La propriété Bold détermine si un texte est normal ou en gras. La propriété Italic détermine si un texte est normal ou en italique. La propriété Size détermine la hauteur, en points, du texte affiché. La propriété Underline détermine si un texte est souligné. La propriété StrikeThrough détermine si le texte apparaît barré. La propriété Weight détermine la graisse du type.

L'aspect des polices à l'écran et à l'impression peut différer, en fonction de votre ordinateur et de votre imprimante. Si vous sélectionnez une police que votre système ne peut pas afficher avec les attributs spécifiés ou installés, Windows la remplace par une police similaire. La police de remplacement sera aussi proche que possible de la police demandée.

Une modification de la valeur de Bold modifie également la valeur de Weight. Affecter la valeur True à la propriété Bold positionne la propriété Weight à 700 ; et la valeur False positionne Weight à 400. Inversement, définir la propriété Weight avec une valeur supérieure à 550 positionne Bold sur True ; une valeur inférieure ou égale à 550 positionne Bold sur False.

La taille en points par défaut est déterminée par le système d'exploitation.


BorderColor, propriété

Spécifie la couleur de la bordure d'un objet.

Syntaxe

object.BorderColor [= Long]

La syntaxe de la propriété BorderColor comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Valeur ou constante déterminant la couleur de la bordure d'un objet.
Valeurs

Vous pouvez utiliser tout nombre entier représentant une couleur valide. Vous pouvez également composer une couleur au moyen de la fonction RGB en spécifiant les composants de couleur rouge, vert et bleu. La valeur de chaque composant de couleur est un nombre entier compris entre zéro et 255. Par exemple, vous pouvez spécifier un bleu sarcelle sous la forme de la valeur entière 4966415 ou les composants de couleur rouge, vert et bleu : 15, 200, 75.

Remarques

Pour utiliser la propriété BorderColor, la propriété BorderStyle doit être définie sur une valeur différente de fmBorderStyleNone.

La propriété BorderStyle utilise la propriété BorderColor pour définir les couleurs de la bordure. La propriété SpecialEffect utilise les couleurs système uniquement pour définir les couleurs de ces bordures. Pour les systèmes d'exploitation Windows, les paramètres des couleurs système se trouvent dans le Panneau de configuration, à l’onglet Apparence du dossier Affichage. Dans Windows NT 3.51, ces réglages se trouvent dans le dossier Couleur du Panneau de configuration.


BorderStyle, propriété

Spécifie le type de bordure utilisé par un contrôle ou une feuille.

Syntaxe

object.BorderStyle [= fmBorderStyle]

La syntaxe de la propriété BorderStyle comprend les éléments suivants :

Èlément	Description
object	Objet valide.
fmBorderStyle	Facultatif. Spécifie le type de bordure.
Valeurs

Les valeurs de fmBorderStyle sont les suivantes :

Constante	Valeur	Description
fmBorderStyleNone	0	Le contrôle n'a pas de bordures visibles.
fmBorderStyleSingle	1	Le contrôle a une bordure à ligne unique (par défaut).
La valeur par défaut pour un contrôle ComboBox, Frame, Label, ListBox ou TextBox est 0 (None). La valeur par défaut pour un contrôle Image est 1 (Single).

Remarques

Pour un contrôle Frame, la propriété BorderStyle est ignorée si la propriété SpecialEffect est positionné sur None.

Vous pouvez utiliser la propriété BorderStyle ou SpecialEffect pour spécifier la bordure d'un contrôle, mais pas les deux. Si vous spécifiez une valeur différente de zéro pour une de ces propriétés, le système définit la valeur de l'autre propriété sur zéro. Par exemple, si vous affectez la valeur fmBorderStyleSingle a la propriété BorderStyle, le système positionne la propriété SpecialEffect sur zéro (Flat). Si vous affectez une valeur non nulle à la propriété SpecialEffect, le système positionne la propriété BorderStyle sur zéro.

La propriété BorderStyle utilise la propriété BorderColor pour définir la couleur de ses bordures.


BoundColumn, propriété

Identifie la source de données dans un contrôle ComboBox ou ListBox à plusieurs colonnes.

Syntaxe

object.BoundColumn [= Variant]

La syntaxe de la propriété BoundColumn comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. Indique comment la valeur de BoundColumn est sélectionnée.
Valeurs

Les valeurs de Variant sont les suivantes :

Valeur	Description
0	Affecte la valeur de la propriété ListIndex au contrôle.
1 ou supérieur	Affecte la valeur de la colonne spécifiée au contrôle. Les colonnes sont numérotées à partir de 1 lorsqu'on utilise cette propriété (par défaut).
Remarques

Quand l'utilisateur choisit une ligne dans un contrôle ListBox ou ComboBox à plusieurs colonnes, la propriété BoundColumn identifie quel élément de cette ligne est à stocker comme la valeur du contrôle. Par exemple, si chaque ligne contient huit éléments et BoundColumn est 3, le système stocke les informations de la troisième colonne de la ligne actuellement sélectionnée en tant que valeur de l'objet.

Vous pouvez afficher un ensemble de données aux utilisateurs, mais stocker différentes valeurs associées pour l'objet en utilisant la propriété BoundColumn et les propriétés TextColumn. TextColumn identifie la colonne de données affichées dans un contrôle ComboBox ou ListBox ; la propriété BoundColumn identifie la colonne de valeurs de données associées stockées pour le contrôle. Par exemple, vous pouvez configurer un contrôle ListBox à plusieurs colonnes contenant les noms des vacances dans une colonne et les dates de ces vacances dans une deuxième colonne. Pour présenter des noms de vacances aux utilisateurs, spécifiez la première colonne en tant que propriété TextColumn. Pour stocker les dates des vacances, spécifiez la deuxième colonne en tant que propriété BoundColumn.

Si le contrôle est dépendant d'une source de données, la valeur dans la colonne spécifiée par la propriété BoundColumn est stockée dans la source de données nommée dans la propriété ControlSource.

La valeur de la propriété ListIndex récupère le numéro de la ligne sélectionnée. Par exemple, si vous voulez connaître la ligne de l'élément sélectionné, affectez la valeur 0 à la propriété BoundColumn pour affecter le numéro de la ligne sélectionnée en tant que valeur du contrôle. Veillez à récupérer la valeur actuelle plutôt que de vous fier à une valeur précédemment enregistrée, si vous référencez une liste dont le contenu peut changer.

Les propriétés Column, List et ListIndex utilisent toutes une numérotation partant de zéro. C'est-à-dire, la valeur du premier élément (colonne ou ligne) est zéro ; la valeur du second élément est 1, et ainsi de suite. Cela signifie que si la valeur de la propriété BoundColumn est 3, vous pouvez accéder à la valeur stockée dans cette colonne en utilisant l'expression Column (2).


BoundValue, propriété

Contient la valeur d’un contrôle quand celui-ci reçoit le focus.

Syntaxe

object.BoundValue [= Variant]

La syntaxe de la propriété BoundValue comporte les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. État ou contenu actuel du contrôle.
Valeurs

Contrôle	Description
CheckBox	Entier indiquant si l’élément est coché :
	Null   Indique que l’élément n’est ni coché, ni décoché.
	–1   True. Indique l’élément est coché.
	0   False. Indique l’élément est décoché.
OptionButton	Même que pour CheckBox.
ToggleButton	Même que pour CheckBox.
ScrollBar	Entier compris entre les valeurs spécifiées pour les propriétés Max et Min.
SpinButton	Même que pour ScrollBar.
ComboBox, ListBox	Valeur de BoundColumn pour les lignes actuellement sélectionnées.
CommandButton	Toujours False.
MultiPage	Entier indiquant la page en cours.
	Zéro (0) indique la première page. La valeur maximale est le nombre de page moins 1.
TextBox	Texte de la zone d’édition.
Remarques

BoundValue s’applique au contrôle ayant le focus.

Le contenu des propriétés BoundValue et Value sont la plupart du temps identiques. Quand un utilisateur édite un contrôle et change sa valeur, le contenu de BoundValue et de Value est différent jusqu’à ce que la modification soit définitive.

La modification d’un contrôle par l’utilisateur a plusieurs répercutions. Par exemple, si un utilisateur change le texte d’un contrôle TextBox, les conséquences sont les suivantes :

1.	L’événement Change est généré. À ce moment, la propriété Value contient le nouveau texte et BoundValue le texte précédant.

2.	L’événement BeforeUpdate est généré.

3.	L’événement AfterUpdate est généré. Les valeurs de BoundValue et de Value sont de nouveau identiques, et contiennent le nouveau texte.

La propriété BoundValue ne peut être utilisée avec une zone de liste à sélection multiple.


Cancel, propriété

Renvoie ou définit une valeur indiquant si un bouton de commande est le bouton Annuler sur une feuille.

Syntaxe

object.Cancel [= Boolean]

La syntaxe de la propriété Cancel comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si l'objet est le bouton Annuler.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le CommandButton est le bouton Annuler.
False	Le CommandButton n'est pas le bouton Annuler (par défaut).
Remarques

Un contrôle CommandButton ou un objet agissant comme tel peut être désigné comme bouton de commande par défaut. Pour les contrôles d’un conteneur OLE, la propriété Cancel n'est fournie que pour les objets se comportant de façon spécifique comme des boutons de commande.

Un seul contrôle CommandButton d'une feuille peut être le bouton Annuler. L’affectation de la valeur True à la propriété Cancel d’un bouton de commande positionne automatiquement à False la propriété Cancel des autres objets de la feuille. Lorsque la propriété Cancel d'un contrôle CommandButton est positionné sur True, alors que la feuille est active, l'utilisateur peut actionner le bouton de commande en cliquant sur celui-ci, en appuyant sur ÉCHAP. ou sur ENTRÉE quand le bouton a le focus..

Une utilisation courante de Cancel est de permettre à l'utilisateur d'annuler des changements non engagés et remettre la feuille dans son état précédent.

Vous devez envisager de faire en sorte que le bouton Annuler soit celui par défaut dans les feuilles gérant des opérations qui ne peuvent être annulées (tel que supprimer). Pour ce faire, affectez la valeur True à la fois à la propriété Cancel et à la propriété Default.


CanPaste, propriété

Spécifie si le Presse-papiers contient des données gérées par l'objet.

Syntaxe

object.CanPaste

La syntaxe de la propriété CanPaste comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

Les valeurs renvoyées par la propriété CanPaste sont les suivantes :

Valeur	Description
True	L'objet sous le pointeur de la souris peut recevoir des informations collées du Presse-papiers (par défaut).
False	L'objet sous le pointeur de la souris ne peut pas recevoir des informations collées du Presse-papiers.
Remarques

Si les données du Presse-papiers sont dans un format que l'objet target actuel ne gère pas, la valeur de la propriété CanPaste est False. Par exemple, si vous essayez de coller une image bitmap dans un objet qui ne gère que du texte, la valeur de la propriété CanPaste est False.


CanRedo, propriété

Indique si l'action Annuler la plus récente peut être inversée.

Syntaxe

object.CanRedo

La syntaxe de la propriété CanRedo comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

Les valeurs renvoyées par la propriété CanRedo sont les suivantes :

Valeur	Description
True	L'action Annuler la plus récente peut être inversée.
False	L'action Annuler la plus récente est irréversible.
Remarques

CanPaste est en lecture seule.

Rétablir une action signifie inverser une action Annuler ; cela ne signifie pas nécessairement répéter la dernière action de l'utilisateur.

Les actions utilisateurs suivantes illustrent l'utilisation de Annuler et Rétablir :

1.	Changer la valeur d'un bouton d'option.

2.	Saisir du texte dans une zone de texte.

3.	Cliquer sur Annuler. Le texte disparaît de la zone de texte.

4.	Cliquer sur Annuler. Le bouton d'option reprend sa valeur précédente.

5.	Cliquer sur Rétablir. La valeur du bouton d'option change.

6.	Cliquer sur Rétablir. Le texte réapparaît dans la zone de texte.


CanUndo, propriété

Indique si la dernière action de l'utilisateur peut être annulée.

Syntaxe

object.CanUndo

La syntaxe de la propriété CanUndo comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

Les valeurs renvoyées de la propriété CanUndo sont les suivantes :

Valeur	Description
True	L'action utilisateur la plus récente peut être annulée.
False	L'action utilisateur la plus récente ne peut pas être annulée.
Remarques

CanUndo est en lecture seule.

De nombreuses actions utilisateurs peuvent être annulées avec la commande Annuler. La propriété CanUndo indique si l'action la plus récente peut être annulée.


Caption, propriété

Texte descriptif apparaissant sur un objet pour l'identifier ou le décrire.

Syntaxe

object.Caption [= String]

La syntaxe de la propriété Caption comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Expression de chaîne mettant en valeur le texte affiché en tant que légende.
Valeurs

La valeur par défaut d'un contrôle est un nom unique dépendant du type de contrôle. Par exemple, CommandButton1 est la légende par défaut pour le premier bouton de commande d'une feuille.

Remarques

Le texte identifie ou décrit l'objet auquel il est associé. Pour les boutons et étiquettes, la propriété Caption spécifie le texte apparaissant dans le contrôle. Pour les objets Page et Tab, elle spécifie le texte apparaissant sur l’onglet.

Si la légende d'un contrôle est trop longue, elle est tronquée. Si la légende d'une feuille est trop longue pour la barre de titre, elle est affichée avec des points de suspension.

La propriété ForeColor du contrôle détermine la couleur du texte du texte.

Conseil   Si un contrôle possède à la fois les propriétés Caption et AutoSize, affecter la valeur True à la propriété AutoSize ajuste automatiquement la taille du contrôle au cadre de la légende entière.


ClientHeight, ClientLeft, ClientTop, ClientWidth, propriétés
ClientHeight, ClientLeft, ClientTop, ClientWidth, propriété

Définit les dimensions et emplacements de la zone d'affichage d'un contrôle TabStrip.

Syntaxe

object.ClientHeight [ =Single]

object.ClientLeft [ =Single]

object.ClientTop [ =Single]

object.ClientWidth [ =Single]

La syntaxe des propriétés ClientHeight, ClientLeft, ClientTop et ClientWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Pour ClientHeight et ClientWidth, spécifie la hauteur ou la largeur, en points, de la zone d'affichage. Pour ClientLeft et ClientTop, spécifie la distance, en points, depuis le bord supérieur gauche du conteneur du contrôle TabStrip.
Remarques

Au moment de l'exécution, ClientLeft, ClientTop, ClientHeight et ClientWidth stockent automatiquement les coordonnées et les dimensions de la zone interne du contrôle TabStrip, qui sont partagés par les objets dans le contrôle TabStrip.


Column, propriété

Spécifie un ou plusieurs éléments d'un contrôle ListBox ou ComboBox.

Syntaxe

object.Column( column, row ) [= Variant]

La syntaxe de la propriété Column comprend les éléments suivants :

Élément	Description
object	Objet valide.
column	Facultatif. Nombre entier compris entre zéro et le nombre total de colonne moins 1.
row	Facultatif. Nombre entier compris entre zéro et le nombre total de ligne moins 1.
Variant	Facultatif. Spécifie une valeur unique, une colonne de valeur, ou un tableau bidimensionnel à charger dans un contrôle ListBox ou ComboBox.
Valeurs

Si vous spécifiez à la fois les valeurs de la colonne et de la ligne, la propriété Column lit ou écrit un élément spécifique.

Si vous ne spécifiez que la valeur de la colonne, la propriété Column lit ou écrit la colonne spécifiée dans la ligne courante de l'objet. Par exemple, MaListBox.Column (3) lit ou écrit la troisième colonne dans MaListBox.

La propriété Column renvoie un Variant à partir du curseur. Lorsqu'un curseur intégré fournit la valeur de Variant (comme lors de l'utilisation de la méthode AddItem), la valeur est une chaîne. Quand un curseur externe fournit la valeur de Variant, le formatage associé au données n'est pas inclus dans le Variant.

Remarques

Vous pouvez utilisez la propriété Column pour affecter le contenu d'une liste modifiable ou d'une zone de liste à un autre contrôle, tel qu'une zone de texte. Par exemple, vous pouvez définir la propriété ControlSource d'une zone de texte sur la valeur de la deuxième colonne d'une zone de liste.

Si l'utilisateur n'effectue pas de sélection quand vous faites référence à une colonne dans une liste modifiable ou une zone de liste, la valeur de la propriété Column est Null. Vous pouvez vérifier cette condition en utilisant la fonction IsNull.

Vous pouvez aussi utiliser la propriété Column pour copier la totalité d'un tableau bidimensionnel de valeurs sur un contrôle. Cette syntaxe vous permet de charger rapidement une liste de choix, plutôt que de charger l'un après l'autre chaque élément de la liste au moyen de la méthode AddItem.

Note  Lors de la copie de données à partir d'un tableau bidimenssionnel, la propriété Column transpose le contenu du tableau dans un contrôle de sorte que le contenu de ListBox1.Column(X, Y) soit le même que MonArray(Y, X). Vous pouvez aussi utiliser la propriété List pour copier un tableau sans le transposer.


ColumnCount, propriété

Spécifie le nombre de colonne à afficher dans une zone de liste ou une liste modifiable.

Syntaxe

object.ColumnCount [= Long]

La syntaxe de la propriété ColumnCount comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Spécifie le nombre de colonnes à afficher.
Remarques

Si vous définissez la propriété ColumnCount pour une zone de liste sur 3 dans une feuille employés, une colonne peut lister les noms, une autre peut lister les prénoms et la troisième peut lister les numéros d'identification des employés.

La définition de la propriété ColumnCount sur 0 affiche zéro colonne et la définition sur -1 affiche toutes les colonnes disponibles. Pour une source de données indépendante, il y a une limite de 10 colonnes (0 à 9).

Vous pouvez utiliser la propriété ColumnWidths pour définir la largeur des colonnes affichées dans le contrôle.


ColumnHeads, propriété

Affiche une ligne unique de titres de colonne pour des zones de liste, des listes modifiables et des objets acceptant des titres de colonne.

Syntaxe

object.ColumnHeads [= Boolean]

La syntaxe de la propriété ColumnHeads comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si les titres de colonnes sont affichés.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Affiche les titres de colonne.
False	N'affiche pas les titres de colonne (par défaut).
Les titres dans les listes modifiables n'apparaissent que lorsque la liste est déroulée.

Remarques

Lorsque le système utilise les éléments de la première ligne de donnés comme titre de colonne, on ne peut pas les sélectionner.


ColumnWidths, propriété

Spécifie la largeur de chaque colonne d'une liste modifiable ou d'une zone de liste à plusieurs colonnes.

Syntaxe

object.ColumnWidths [= String]

La syntaxe de la propriété ColumnWidths comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Définit la largeur de la colonne en points. Une valeur de –1 ou non définie signifie que la largeur sera calculée. Une largeur de 0 dissimule une colonne. Pour spécifier une unité de mesure différente, faites figurer l'unité de mesure. Une largeur supérieure à 0 spécifie explicitement la largeur de la colonne.
Valeurs

Pour séparer des entrées dans une colonne, utilisez des points-virgules (;) comme séparateurs de liste. Ou utilisez le séparateur de liste spécifié dans la section Paramètres régionaux du Panneau de configuration Windows.

Un nombre quelconque des valeurs de la propriété ColumnWidths peut être vierge. Vous créez une valeur non définie en tapant un séparateur de liste sans le faire précéder d'une valeur.

Si vous spécifiez 1 dans la page de propriété, la valeur affichée dans la page de propriété est non définie.

Pour calculer la largeur des colonnes lorsque la propriété ColumnWidths est vierge ou égale à 1, la largeur du contrôle est divisée également entre toutes les colonnes de la liste. Si la somme des largeurs de colonnes spécifiées dépassent la largeur du contrôle, la liste est alignée sur la gauche dans le contrôle et une ou plusieurs colonnes à l'extrême droite ne sont pas affichées. Les utilisateurs peuvent faire défiler la liste au moyen de la barre de défilement horizontal pour afficher les colonnes les plus à droite.

La largeur minimale de colonne calculée est de 72 points (1 pouce). Pour rétrécir les colonnes, vous devez en spécifier la largeur explicitement.

Sauf spécification contraire, les largeurs de colonnes sont mesurées en points. Pour spécifier une autre unité de mesure, précisez les unités en tant que parties des valeurs. Les exemples suivants spécifient des largeurs de colonnes en plusieurs unités de mesure et décrivent comment les différentes valeurs s'insèrent dans une zone de liste à trois colonnes, dont la largeur est de 4 pouces.

Valeur	Effet
90;72;90	La première colonne est de 90 points (1,25 pouce) ; la deuxième est de 72 points (1 pouce) ;la troisième est de 90 points.
6 cm;0;6 cm	La première colonne est de 6 centimètres ; la deuxième est masquée ; la troisième est de 6 centimètres. Étant donné qu'une partie de la troisième colonne est visible, une barre de défilement horizontal apparaît.
1.5 in;0;2.5 in	La première colonne est de 1,5 pouce, la deuxième est masquée, la troisième colonne est de 2,5 pouces.
2 in;;2 in	La première colonne est de 2 pouces, la deuxième est de 1 pouce (par défaut), la troisième colonne est de 2 pouces. Étant donné que la moitié de la troisième colonne est visible, une barre de défilement horizontal apparaît.
(Vierge)	Les trois colonnes sont de la même largeur (1,33 pouce).
Remarques

Dans une liste modifiable, le système affiche la colonne désignée par la propriété TextColumn dans la portion zone de texte du contrôle.


ControlSource, propriété

Identifie l’emplacement des données utilisées pour définir ou enregistrer la propriété Value d'un contrôle.

Syntaxe

object.ControlSource [= String]

La syntaxe de la propriété ControlSource comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Spécifie la cellule de feuille de travail liée à la propriété Value d'un contrôle.
Remarques

La propriété ControlSource identifie une cellule ou un champ et ne contient pas les données enregistrées dans la cellule ou le champ. Si vous modifiez la propriété Value du contrôle, la modification se répercute automatiquement dans la cellule ou le champ liés. De même, si vous changez la valeur de la cellule ou du champ liés, la modification se répercute automatiquement dans la propriété Value du contrôle..

Vous ne pouvez spécifier un autre contrôle pour ControlSource sans provoquer d’erreur.

La valeur par défaut de la propriété ControlSource est une chaîne vide. Si ControlSource contient une valeur autre qu’une chaîne vide, la propriété identifie une cellule ou un champ liés. Leur contenu est alors automatiquement copié dans la propriété Value lors du chargement du contrôle.

Note  Si la propriété Value est sur Null, aucune valeur n’apparaît à l’emplacement identifié par ControlSource.


ControlTipText, propriété

Spécifie le texte apparaissant lorsque l'utilisateur maintient brièvement le pointeur de la souris sur un contrôle sans cliquer.

Syntaxe

object.ControlTipText [= String]

La syntaxe de la propriété ControlTipText comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Texte apparaissant lorsque l'utilisateur maintient le pointeur de la souris sur un contrôle.
Remarques

La propriété ControlTipText vous permet de donner aux utilisateurs des indications sur un contrôle dans une feuille en cours d'exécution. La propriété peut être définie au moment de la conception, mais n'apparaît à côté du contrôle que pendant l'exécution.

La valeur par défaut de la propriété ControlTipText est une chaîne vide. Quand la valeur de la propriété ControlTipText est une chaîne vide, aucune indication n'est disponible pour ce contrôle.


Count, propriété

Renvoie le nombre d'objets d'une collection.

Syntaxe

object.Count

La syntaxe de la propriété Count comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La propriété Count est en lecture seule.

Notez que la valeur d'index de la première page ou du premier onglet d'une collection est zéro, la valeur de la deuxième page ou du deuxième onglet est 1, et ainsi de suite. Par exemple, si un contrôle MultiPage comporte deux pages, les index des pages sont 0 et 1, et la valeur de Count est 2.


CurLine, propriété

Spécifie la ligne actuelle d'un contrôle.

Syntaxe

object.CurLine [= Long]

La syntaxe de la propriété CurLine comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Spécifie la ligne actuelle d'un contrôle.
Remarques

La ligne actuelle d'un contrôle est la ligne contenant le point d'insertion. Le numéro de la première ligne est zéro.

La propriété CurLine est valide lorsque le contrôle a le focus.


CurTargetX, propriété

Récupère la position horizontale préférée du point d'insertion dans un contrôle TextBox ou ComboBox.

Syntaxe

object.CurTargetX

La syntaxe de la propriété CurTargetX comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

La propriété CurTargetX extrait la position préférée, mesurée en dixièmes de millimètres. Un dixième de millimètre est égal à 0,0001 mètre.

Remarques

La position cible est relative au bord gauche du contrôle. Si la longueur d'une ligne est inférieure à la valeur de la propriété CurTargetX, vous pouvez placer le point d'insertion à la fin de la ligne. La valeur de la propriété CurTargetX change lorsque l'utilisateur définit le point d'insertion ou lorsque la propriété CurX est définie. la propriété CurTargetX est en lecture seule.

La valeur renvoyée est valide lorsque l'objet a le focus.

Vous pouvez utiliser les propriétés CurTargetX et CurX pour déplacer le point d'insertion lorsque l'utilisateur fait défiler le contenu d'un contrôle TextBox ou ComboBox à plusieurs lignes. Lorsque l'utilisateur déplace le point d'insertion vers une autre ligne de texte en faisant défiler le contenu d'un objet, la propriété CurTargetX spécifie la position préférée du point d'insertion. la propriété CurX est positionnée sur cette valeur si la ligne de texte est plus longue que la valeur de la propriété CurTargetX. Sinon, la propriété CurX est défini sur la fin de la ligne de texte.


CurX, propriété

Spécifie la position horizontale actuelle du point d'insertion dans un contrôle TextBox ou ComboBox à plusieurs ligne.

Syntaxe

object.CurX [= Long]

La syntaxe de la propriété CurX comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Indique la position actuelle, mesurée en dixièmes de millimètres. Un dixième de millimètre est égal à 0,0001 mètre.
Remarques

La propriété CurX s'applique à un contrôle TextBox ou ComboBox à plusieurs lignes. La valeur renvoyée est valide lorsque l'objet a le focus.

Vous pouvez utiliser les propriétés CurTargetX et CurX pour positionner le point d'insertion lorsque l'utilisateur fait défiler le contenu d'un contrôle TextBox ou ComboBox à plusieurs lignes. Lorsque l'utilisateur déplace le point d'insertion sur une autre ligne de texte en faisant défiler le contenue de l'objet, la propriété CurTargetX spécifie la position préférée du point d'insertion. la propriété CurX contient cette valeur si la ligne de texte est plus longue que la valeur de la propriété CurTargetX. Sinon, la propriété CurX est défini sur la fin de la ligne de texte.


Cycle, propriété

Spécifie l'action à effectuer lorsque l'utilisateur quitte le dernier contrôle contenu dans un contrôle Frame ou un objet Page.

Syntaxe

object.Cycle [= fmCycle]

La syntaxe de la propriété Cycle comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmCycle	Facultatif. Spécifie si le cycle inclut les contrôles contenu dans un contrôle Frame ou MultiPage.
Valeurs

Les valeurs de fmCycle sont les suivantes :

Constante	Valeur	Description
fmCycleAllForms	0	Parcourt les contrôles de la feuille, et ceux d’un contrôle Frame et d’un objet MultiPage actuellement affichés sur la feuille.
fmCycleCurrentForm	2	Parcourt les contrôles de la feuille, d’un contrôle Frame ou MultiPage. Le focus reste dans la feuille, le contrôle Frame ou MultiPage jusqu'à ce qu'il soit explicitement défini sur un contrôle à l'extérieur de la feuille, de contrôle Frame ou MultiPage.
Si vous spécifiez une valeur décimale pour Cycle, la valeur est arrondie à l’entier supérieur.

Remarques

L'ordre de tabulation identifie l’ordre dans lequel les contrôles reçoivent le focus lorsque l'utilisateur appuie sur la touche TAB dans une feuille ou une sous-feuille. La propriété Cycle détermine l'action à effectuer lorsque l'utilisateur fait une tabulation à partir du dernier contrôle dans l'ordre des tabulations.

La valeur fmCycleAllForms transfère le focus au premier contrôle du contrôle Frame ou MultiPage suivant sur la feuille lorsque l'utilisateur fait une tabulation à partir du dernier contrôle dans l'ordre des tabulations.

La valeur fmCycleCurrentForm transfère le focus au premier contrôle de la même feuille, du même contrôle Frame ou MultiPage lorsque l'utilisateur fait une tabulation à partir du dernier contrôle dans l'ordre des tabulations.


Default, propriété

Désigne le bouton de commande par défaut d'une feuille.

Syntaxe

object.Default [= Boolean]

La syntaxe de la propriété Default comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le bouton de commande est celui par défaut.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le CommandButton est le bouton par défaut.
False	Le CommandButton n'est pas le bouton par défaut (par défaut).
Remarques

Un CommandButton ou un objet agissant comme tel peut être désigné comme bouton de commande par défaut. Un seul objet d'une feuille peut être le bouton, de commande par défaut. L’affectation de la valeur True la propriété Default pour un objet positionne automatiquement celle-ci sur False pour tous les autres objets d'une feuille.

Pour sélectionner le bouton de commande par défaut d’une feuille active, l’utilisateur peut cliquer sur le bouton ou appuyer sur ENTRÉE si aucun autre CommandButton n’a le focus. Appuyer sur ENTRÉE lorsqu’aucun autre CommandButton n’a le focus déclenche également l’événement KeyUp pour le bouton de commande par défaut.

Default est disponible pour les contrôles Conteneur OLE dont l’action est absolument similaire à celle des contrôles CommandButton.

Conseil   Vous devez envisager de faire en sorte que le bouton Annuler soit celui par défaut dans les feuilles gérant des opérations qui ne peuvent être annulées (tel que supprimer). Pour ce faire, affectez la valeur True définissez à la fois à la propriété Default et la propriété Cancel.


Delay, propriété

Spécifie le délai d’attente entre des événements, pour les événements SpinUp, SpinDown et Change sur un contrôle SpinButton ou ScrollBar.

Syntaxe

object.Delay [= Long]

La syntaxe de la propriété Delay comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Délai, en millisecondes, entre des événements.
Remarques

La propriété Delay affecte la durée entre des événements SpinUp, SpinDown et Change consécutifs lorsque l'utilisateur clique et maintient appuyé un bouton sur un contrôle SpinButton ou ScrollBar. Le premier événement se produit immédiatement. Le délai jusqu'à l'occurrence du deuxième événement est cinq fois la valeur de la propriété Delay spécifiée. Ce retard initial permet de générer facilement un événement unique plutôt qu'un flux d'événements.

Après le délai initial, l'intervalle entre les événements est la valeur spécifiée dans la propriété Delay.

La valeur par défaut de la propriété Delay est de 50 millisecondes. Cela signifie que l'objet déclenche le premier événement au bout de 250 millisecondes (5 fois la valeur spécifiée) et déclenche chaque événement suivant après 50 millisecondes.


DragBehavior, propriété

Spécifie si le système valide la fonction glisser-déplacer pour un contrôle TextBox ou ComboBox.

Syntaxe

object.DragBehavior [= fmDragBehavior]

La syntaxe de la propriété DragBehavior comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmDragBehavior	Facultatif. Spécifie si la fonction glisser-déplacer est activée.
Valeurs

Les valeurs de fmDragBehavior sont les suivantes :

Constante	Valeur	Description
fmDragBehaviorDisabled	0	Ne permet par une action glisser-déplacer (par défaut).
fmDragBehaviorEnabled	1	Permet une action glisser-déplacer.
Remarques

Si la propriété DragBehavior est activée, le déplacement dans une zone de texte ou une liste modifiable commence une opération glisser-déplacer sur le texte sélectionné. Si DragBehavior est désactivé, le déplacement dans une zone de texte ou une liste modifiable sélectionne le texte.

La partie déroulante d’un contrôle ComboBox ne supporte ni la fonction glisser-déplacer, ni la sélection d’une partie du texte des éléments de la liste.

DragBehavior n’a aucun effet sur un contrôle ComboBox dont la propriété Style a la valeur fmStyleDropDownList.

Note  Vous pouvez combiner les effets des propriétés EnterFieldBehavior et DragBehavior pour créer un grand nombre de styles de zone de texte.


DrawBuffer, propriété

Spécifie le nombre de pixels de la mémoire tampon vidéo utilisée pour le rafraichissement de l'image

Syntaxe

object.DrawBuffer [= value]

Élément	Description
object	Nom d’objet valide.
value	Entier compris entre 16 000 et 1 048 576 égal au nombre maximum de pixels que l’objet prend en compte dans sa mémoire tampon vidéo.
Remarques

La propriété DrawBuffer spécifie le nombre maximum de pixels pouvant être affichés simultanément lors du rafraîchissement d’écran. La mémoire réelle utilisée par l’objet dépend de la résolution de l’écran. Si vous affectez une valeur élevée à DrawBuffer, l’application sera ralentie. Un tampon volumineux n’est intéressant que si des images de grand format se chevauchent.

Utilisez la fenêtre Propriétés pour spécifier la valeur de DrawBuffer.


DropButtonStyle, propriété

Spécifie le symbole affiché sur le bouton d’ouverture de liste d'un contrôle ComboBox.

Syntaxe

object.DropButtonStyle [= fmDropButtonStyle]

La syntaxe de la propriété DropButtonStyle comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmDropButtonStyle	Facultatif. Aspect du bouton d’ouverture de liste.
Valeurs

Les valeurs de fmDropButtonStyle sont les suivantes :

Constante	Valeur	Description
fmDropButtonStylePlain	0	Affiche un bouton sans symbole.
fmDropButtonStyleArligne	1	Affiche une flèche vers le bas (par défaut).
fmDropButtonStyleEllipsis	2	Affiche des points de suspension ().
fmDropButtonStyleReduce	3	Affiche une ligne horizontale comme un caractère de soulignement.
Remarques

La valeur recommandée pour les éléments apparaissant dans une liste est fmDropButtonStyleArrow. Si vous voulez utiliser ce boutons dans un autre but, comme pour afficher une zone de dialogue, spécifiez la valeur fmDropButtonStyleEllipsis, fmDropButtonStylePlain ou fmDropButtonStyleReduce et interceptez l'événement DropButtonClick.


Enabled, propriété

Spécifie si un contrôle peut recevoir le focus et répondre aux événements générés par l'utilisateur.

Syntaxe

object.Enabled [= Boolean]

La syntaxe de la propriété Enabled comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si l'objet peut répondre aux événements générés par l'utilisateur.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le contrôle peut recevoir le focus et répondre aux événements générés par l'utilisateur, il est accessible par du code (par défaut).
False	L'utilisateur ne peut pas intervenir sur le contrôle en utilisant la souris, des frappes de touche, des accès rapides, ou des touches programmables. Le contrôle est généralement toujours accessible par du code.
Remarques

Utilisez la propriété Enabled pour activer ou désactiver les contrôles. Un contrôle désactivé apparaît estompé, à la différence du contrôle activé. Également, si un contrôle affiche une image bitmap, celle-ci est estompée lorsque le contrôle est estompé. Si Enabled est sur False pour un contrôle Image, le contrôle ne déclenche aucun événement sans pour autant être estompé.

Les propriétés Enabled et Locked fonctionnent ensemble pour obtenir les effets suivants :

•	Si la valeur des propriétés Enabled et Locked est True, le contrôle peut recevoir le focus et apparaître normalement (non estompé) dans la feuille. L'utilisateur peut copier, mais non modifier, les données dans le contrôle.

•	Si la valeur de la propriété Enabled est True et celle de la propriété Locked est False, le contrôle peut recevoir le focus et apparaître normalement dans la feuille. L'utilisateur peut copier et modifier les données dans le contrôle.

•	Si la valeur de la propriété Enabled est False et celle de la propriété Locked est True, le contrôle ne peut pas recevoir le focus, il est estompé dans la feuille. L'utilisateur ne peut ni copier, ni modifier les données d'un contrôle.

•	Si la valeur des propriétés Enabled et Locked est False, le contrôle ne peut pas recevoir le focus, il est estompé dans la feuille. L'utilisateur ne peut ni copier, ni modifier les données d'un contrôle.

Vous pouvez combiner les valeurs des propriétés Enabled et TabStop pour empêcher l'utilisateur de sélectionner un bouton de commande avec TAB, tout en l'autorisant à cliquer sur le bouton. Lorsque la valeur de TabStop est False, cela signifie que le bouton de commande n'apparaît pas dans l'ordre des tabulations. Cependant, si la valeur de Enabled est True, l'utilisateur peut alors toujours cliquer sur le bouton de commande, tant que la valeur de la propriété TakeFocusOnClick est True.

Quand l'utilisateur fait une tabulation sur un contrôle MultiPage ou un contrôle TabStrip activé, la première page ou onglet du contrôle reçoit le focus. Si la première page ou l’onglet d'un contrôle MultiPage ou TabStrip est désactivée, la première page ou onglet activé de ce contrôle reçoit le focus. Si toutes les pages ou onglet d'un contrôle MultiPage ou TabStrip sont désactivées, le contrôle est désactivé et ne peut pas recevoir le focus.

Si le contrôle Frame est désactivé, tous les contrôles qu'il contient sont désactivés.

Cliquer sur un contrôle ListBox désactivé ne génère pas l’événement Click.


EnterFieldBehavior, propriété

Spécifie le comportement de la sélection lors de la saisie d'un contrôle TextBox ou ComboBox.

Syntaxe

object.EnterFieldBehavior [= fmEnterFieldBehavior]

La syntaxe de la propriété EnterFieldBehavior comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmEnterFieldBehavior	Facultatif. Comportement souhaité de la sélection.
Valeurs

Les valeurs de fmEnterFieldBehavior sont les suivantes :

Constante	Valeur	Description
fmEnterFieldBehaviorSelectAll	0	Sélectionne la totalité du contenu de la zone d'édition lors de la saisie du contrôle (par défaut).
fmEnterFieldBehaviorRecallSelection	1	Laisse la sélection inchangée. Visuellement, cette action utilise la sélection qui était en vigueur la dernière fois que le contrôle était actif.
Remarques

La propriété EnterFieldBehavior gère la sélection du texte lorsque le contrôle reçoit le focus avec la touche tab (action de l’utilisateur) et non suite à la méthode SetFocus. Avec SetFocus, le contenu du contrôle n’est pas sélectionné et le point d’insertion apparaît après le dernier caractère de la zone d’édition du contrôle.


EnterKeyBehavior, propriété

Définit l'effet d'une pression sur ENTRÉE dans un contrôle TextBox.

Syntaxe

object.EnterKeyBehavior [= Boolean]

La syntaxe de la propriété EnterKeyBehavior comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie l'effet d'une pression sur ENTRÉE.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Une pression sur ENTRÉE créé une nouvelle ligne.
False	Une pression sur ENTRÉE déplace le focus vers l'objet suivant dans l'ordre des tabulations (par défaut).
Remarques

Les propriétés EnterKeyBehavior et MultiLine sont très proches. Les valeurs décrites ci-dessus ne s'appliquent que si la valeur de la propriété MultiLine est True. Pour la valeur False, une pression sur ENTRÉE déplace toujours le focus vers le focus suivant dans l'ordre des tab order quelle que soit la valeur de la propriété EnterKeyBehavior.

L'effet de la combinaison des touches CTRL+ENTRÉE dépend aussi de la valeur de la propriété MultiLine. Pour la valeur True, la combinaison des touches CTRL+ENTRÉE crée une nouvelle ligne, quelle que soit la valeur de la propriété EnterKeyBehavior. Pour la valeur False, la combinaison CTRL+ENTRÉE reste sans effet.


ForeColor, propriété

Spécifie la couleur du premier plan d'un objet.

Syntaxe

object.ForeColor [= Long]

La syntaxe de la propriété ForeColor comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Valeur ou constante déterminant la couleur du premier plan d'un objet.
Valeurs

Vous pouvez utiliser tout nombre entier représentant une couleur valide. Vous pouvez également spécifier une couleur au moyen de la fonction RGB avec des composants de couleur rouge, vert et bleu. La valeur de chaque composant de couleur est un nombre entier compris entre zéro et 255. Par exemple, vous pouvez spécifier un bleu sarcelle sous la forme de la valeur entière 4966415 ou les composants de couleur rouge, vert et bleu sont 15, 200, 75.

Remarques

Utilisez la propriété ForeColor pour faciliter la lecture de contrôles de feuilles ou pour véhiculer une signification particulière. Par exemple, si une zone de texte fait état du nombre de pièces en stock, vous pouvez changer la couleur du texte lorsque la valeur passe en dessous du seuil de réassortiment.

Pour un contrôle ScrollBar ou SpinButton, la propriété ForeColor définit la couleur des flèches. Pour un contrôle Frame, la propriété ForeColor change la couleur de la légende. Pour un objet Font, la propriété ForeColor détermine la couleur d'un texte.


GroupName, propriété

Crée un groupe de contrôles OptionButton qui s’excluent mutuellement.

Syntaxe

object.GroupName [= String]

La syntaxe de la propriété GroupName comporte les éléments suivants :

Élément	Description
object	OptionButton valide.
String	Facultatif. Nom du groupe auquel appartient le contrôle OptionButton. Utilisez le même nom pour tous les boutons du groupe. Le réglage par défaut est une chaîne vierge.
Remarques

Pour créer un groupe de contrôles OptionButton qui s'excluent mutuellement, vous pouvez placer les boutons dans un contrôle Frame de la feuille, ou utiliser la propriété GroupName. GroupName est plus efficace pour les raisons suivantes :

•	Vous n’êtes pas obligé de créer un contrôle Frame pour chaque groupe. En évitant l’utilisation du contrôle Frame, vous limitez le nombre de contrôles sur la feuille. Ainsi, vous améliorez les performances et réduisez la taille de la feuille.

•	La conception est plus souple. Si vous créez un groupe avec un contrôle Frame, celui-ci doit englober tous les boutons. Si vous voulez plusieurs groupes, vous devez créer un contrôle Frame pour chaque groupe, alors que si vous créez un groupe avec la propriété GroupName, les boutons d’option peuvent se situer à tout endroit de la feuille. Si vous souhaitez plusieurs groupes, spécifiez un nom unique pour chaque groupe et vous conserverez la liberté de placer les divers contrôles n’importe où sur la feuille.

•	Vous pouvez créer des boutons sur fond transparent pour améliorer l’aspect visuel de la feuille. Le contrôle Frame n’est pas un contrôle transparent.

Quelle que soit la méthode employée, cliquer sur un bouton d’un groupe change en False la valeur des autres boutons du même groupe. Tous les boutons d’option d’un même GroupName d'un conteneur unique s'excluent mutuellement. Vous pouvez utiliser le même nom de groupe dans deux conteneurs, mais cela créera deux groupes (un dans chaque conteneur) et non un groupe englobant les deux conteneurs.

Supposons, par exemple, que votre feuille contienne des boutons d’option et un contrôle MultiPage qui comporte également des boutons d’option. Ces derniers représentent un groupe et les boutons de la feuille un autre. Les deux groupes n’ont aucun effet l’un sur l’autre. Modifier le réglage d’un bouton du contrôle MultiPage n’affecte pas les boutons de la feuille.


Height, Width, propriétés

Hauteur ou largeur en points d'un objet.

Syntaxe

object.Height [= Single]

object.Width [= Single]

La syntaxe des propriétés Height et Width comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Expression numérique spécifiant les dimensions d'un objet.
Remarques

Les propriétés Height et Width sont automatiquement mises à jour lorsque vous déplacez ou redimensionnez un contrôle. Si vous modifiez la taille d'un contrôle, la propriété Height ou Width stocke la nouvelle hauteur ou largeur, alors que la propriété OldHeight ou OldWidth stocke la hauteur ou largeur précédente. Si vous spécifiez une valeur pour la propriété Left ou Top inférieure à zéro, cette valeur sera utilisée pour calculer la hauteur ou largeur du contrôle, mais une partie du contrôle ne sera pas visible sur la feuille.

Si vous déplacez un contrôle d'une partie d'une feuille à une autre, la valeur de Height ou Width ne change que si vous dimensionnez le contrôle lors de son déplacement. Les valeurs des propriétés Left et Top du contrôle changent pour refléter la nouvelle position du contrôle par rapport aux bords de la feuille qui le contient.

La valeur affectée à Height ou Width doit être supérieure ou égale à zéro. Pour la plupart des systèmes, la plage de valeurs recommandée est de 0 à +32.767. Des valeurs supérieures peuvent également fonctionner selon la configuration de votre système.


HelpContextID, propriété

Associe une rubrique spécifique à un fichier d'aide Microsoft Windows personnalisé a un contrôle spécifique.

Syntaxe

object.HelpContextID [= Long]

La syntaxe de la propriété HelpContextID comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Nombre entier positif spécifiant l'ID contexte d'une rubrique du fichier d'aide associé à l'objet. Zéro indique qu'aucune rubrique d'aide est associée à l'objet (par défaut). Doit être un ID contexte valide dans le fichier d'aide spécifié.
Remarques

La rubrique identifiée par la propriété HelpContextID est accessible aux utilisateurs lorsqu'une feuille est en cours d'exécution. Pour afficher la rubrique, l'utilisateur doit sélectionner le contrôle ou placer le focus sur ce contrôle, puis appuyer sur F1.

La propriété HelpContextID fait référence à une rubrique d'un fichier d'aide personnalisé que vous avez créer pour décrire votre feuille ou application. En Visual Basic, le fichier d'aide personnalisé est une propriété du project.


HideSelection, propriété

Spécifie si le texte sélectionné reste en surbrillance lorsqu'un contrôle n'a pas le focus.

Syntaxe

object.HideSelection [= Boolean]

La syntaxe de la propriété HideSelection comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le texte sélectionné reste en surbrillance, même lorsque le contrôle n'a pas le focus.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le texte sélectionné n'est pas en surbrillance, à moins que le contrôle n'ait le focus (par défaut).
False	Le texte sélectionné apparaît toujours en surbrillance.
Remarques

Vous pouvez utiliser la propriété HideSelection pour maintenir le texte en surbrillance lorsqu'une autre feuille ou une zone de dialogue reçoit le focus, comme dans une procédure de vérification orthographique.


IMEMode, propriété

Spécifie le mode d'exécution par défaut de l'Éditeur de méthode d'entrée (IME) pour un contrôle. Cette propriété ne s'applique qu'aux applications destinées à l'Extrême Orient et est ignorée par les autres applications.

Syntaxe

object.IMEMode [= fmIMEMode]

La syntaxe de la propriété IMEMode comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmIMEMode	Facultatif. Mode de l'Éditeur de méthode d'entrée (IME).
Valeurs

Les valeurs de fmIMEMode sont les suivantes :

Constante	Valeur	Description
fmIMEModeNoControl	0	Ne commande pas l'IME (par défaut).
fmIMEModeOn	1	IME activé.
fmIMEModeOff	2	IME désactivé. Mode anglais.
fmIMEModeDisable	3	IME désactivé. L'utilisateur ne peut pas activer l'IME depuis le clavier.
fmIMEModeHiragana	4	IME activé en mode Hiragana pleine largeur.
fmIMEModeKatakana	5	IME activé en mode Katakana pleine largeur.
fmIMEModeKatakanaHalf	6	IME activé en mode Katakana demi-largeur.
fmIMEModeAlphaFull	7	IME activé en mode alphanumérique pleine largeur.
fmIMEModeAlpha	8	IME activé en mode alphanumérique demi-largeur.
fmIMEModeHangulFull	9	IME activé en mode Hangul pleine largeur.
fmIMEModeHangul	10	IME activé en mode Hangul demi-largeur.
La valeur fmIMEModeNoControl indique que le mode de l'IME ne change pas lorsque le contrôle reçoit le focus au moment de l'exécution. Pour toute autre valeur, le mode de l'IME est défini sur la valeur spécifiée par la propriété IMEMode lorsque le contrôle reçoit le focus au moment de l'exécution.

Remarques

Il existe deux façons de définir le mode de l'IME : l'une par la barre d'outils de l'IME, l'autre par la propriété IMEMode d'un contrôle, qui définit ou renvoie le mode actuel de l'IME. Cette propriété permet un contrôle dynamique de l'IME par du code.

L'exemple suivant explique la façon dont la propriété IMEMode fonctionne en interaction avec la barre d'outils de l'IME. Supposons que vous avez conçu une feuille avec TextBox1 et CheckBox1. Vous avez affecté la valeur à la propriété TextBox1.IMEMode, et la valeur 1 à la propriété CheckBox1.IMEMode. En mode conception, vous avez utilisé la barre d'outils pour l'IME en mode 2.

Lorsque vous exécutez la feuille, l'IME commence en mode 2. Si vous cliquez sur TextBox1, le mode IME ne change pas parce que la valeur de la propriété IMEMode pour ce contrôle est 0. Si vous cliquez sur CheckBox1, l'IME passe au mode 1, parce la valeur de la propriété IMEMode pour ce contrôle est 1. Si vous cliquez encore une fois sur TextBox1, l'IME reste en mode 1 (la valeur de la propriété IMEMode est 0, l'IME conserve donc sa dernière valeur).

Toutefois, vous pouvez outrepasser la propriété IMEMode. Par exemple, supposons que vous cliquez sur CheckBox1 et que l'IME passe en mode 1, comme défini par la propriété IMEMode pour le contrôle CheckBox. Si vous utilisez ensuite la barre d'outils IME pour mettre l'IME en mode 3, l'IME passera alors en mode 3 chaque fois que vous cliquez sur le contrôle. Cette action ne change pas la valeur de la propriété, elle outrepasse celle-ci jusqu'à la prochaine exécution de la feuille.


Index, propriété

Position d'un objet Tab dans une collection Tabs ou d'un objet Page dans une collection Pages.

Syntaxe

object.Index [= Integer]

La syntaxe de la propriété Index comprend les éléments suivants :

Élément	Description
object	Objet valide.
Integer	Facultatif. Index de l'objet Tab actuellement sélectionné.
Remarques

La propriété Index spécifie l'ordre dans lequel les tabulations apparaissent. La modification de la valeur de Index modifie à l'écran l'ordre de la collection Pages d'un contrôle MultiPage ou Tabs d'un contrôle TabStrip. La valeur d'index de la première page ou tabulation est zéro, la valeur d'index de la deuxième page ou tabulation est 1, et ainsi de suite.

Dans un contrôle MultiPage, Index désigne un objet Page ainsi que l’objet Tab de la page. Dans un contrôle TabStrip, Index ne désigne que l’onglet.


InsideHeight, InsideWidth, propriétés

La propriété InsideHeight renvoie la hauteur, en points, de la zone client à l'intérieur d'une feuille. la propriété InsideWidth renvoie la largeur, en points, de la zone client à l'intérieur d'une feuille.

Syntaxe

object.InsideHeight

object.InsideWidth

La syntaxe des propriétés InsideHeight et InsideWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Les propriétés InsideHeight et InsideWidth sont en lecture seule. Si la zone comporte une barre de défilement, la valeur renvoyée n'inclut pas la hauteur ou largeur de cette barre de défilement.


IntegralHeight, propriété

Indique si un contrôle ListBox ou TextBox affiche des lignes entières de texte dans une liste ou des lignes partielles dans le sens de la hauteur.

Syntaxe

object.IntegralHeight [= Boolean]

La syntaxe de la propriété IntegralHeight comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Indique si la liste affiche des lignes partielles de texte.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	La liste se redimensionne pour n'afficher que les éléments complets (par défaut).
False	La liste ne se redimensionne pas, même si l'élément est trop grand pour être affiché complètement.
Remarques

La propriété IntegralHeight se rapporte à la hauteur de la liste, tout comme la propriété AutoSize se rapporte à la largeur de la liste.

Si la valeur de la propriété IntegralHeight est True, la zone de liste se redimensionne automatiquement si nécessaire pour afficher des lignes complètes. Pour la valeur False, la liste reste de taille fixe ; si les éléments sont plus grands que l'espace disponible dans la liste, l'élément entier n'est pas affiché.


TakeFocusOnClick, propriété

Spécifie si un contrôle prend le focus lorsqu'il fait l'objet d'un clic.

Syntaxe

object.TakeFocusOnClick [= Boolean]

La syntaxe de la propriété TakeFocusOnClick comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si un contrôle prend le focus lorsqu'il fait l'objet d'un clic.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le bouton prend le focus lorsqu'il fait l'objet d'un clic (par défaut).
False	Le bouton ne prend pas le focus lorsqu'il fait l'objet d'un clic.
Remarques

La propriété TakeFocusOnClick ne définit que ce qui se produit lorsque l'utilisateur clique sur un contrôle. Si l'utilisateur fait une tabulation sur ce contrôle, celui-ci prend le focus quel que soit la valeur de TakeFocusOnClick.

Utilisez cette propriété pour compléter des actions qui affectent un contrôle sans exiger que celui-ci abandonne le focus. Par exemple, supposons que votre feuille comporte un contrôle TextBox et un contrôle CommandButton qui vérifie l'orthographe du texte. Vous souhaitez pouvoir sélectionner le texte du contrôle TextBox, puis cliquer sur le contrôle CommandButton et exécuter le vérificateur d'orthographe sans enlever le focus du contrôle TextBox. Vous pouvez y parvenir en affectant la valeur False à la propriété TakeFocusOnClick du contrôle CommandButton.


KeepScrollBarsVisible, propriété

Spécifie si les barres de défilement restent visibles lorsqu'elles ne sont pas nécessaires.

Syntaxe

object.KeepScrollBarsVisible [= fmScrollBars]

La syntaxe de la propriété KeepScrollBarsVisible comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmScrollBars	Facultatif. Spécifie si les barres de défilement sont affichées.
Valeurs

Les valeurs de fmScrollBars sont les suivantes :

Constante	Valeur	Description
fmScrollBarsNone	0	N'affiche aucune barre de défilement.
fmScrollBarsHorizontal	1	Affiche une barre de défilement horizontal.
fmScrollBarsVertical	2	Affiche une barre de défilement vertical.
fmScrollBarsBoth	3	Affiche une barre de défilement horizontal et une barre de défilement vertical (par défaut).
Remarques

Si la zone visible est suffisamment grande pour afficher tous les contrôles sur un objet tel qu'un objet Page ou une feuille, les barres de défilement ne sont pas nécessaires. La propriété KeepScrollBarsVisible détermine si les barres de défilement restent visibles lorsqu'elles ne sont pas nécessaires.

Si les barres de défilement sont visibles lorsqu'elles ne sont pas nécessaires, elles apparaissent en taille normale, et le curseur de défilement remplit toute la largeur ou hauteur de la barre de défilement.


LargeChange, propriété

Spécifie la distance de déplacement intervenant lorsque l'utilisateur clique entre le curseur de défilement et la flèche de défilement.

Syntaxe

object.LargeChange [= Long]

La syntaxe de la propriété LargeChange comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Nombre entier spécifiant la valeur modifiant la propriété Value.
Remarques

La propriété LargeChange ne s’applique qu’au contrôle ScrollBar et non aux barres de défilement des contrôles TextBox et ComboBox déroulants.

La valeur de la propriété LargeChange est la quantité par laquelle la propriété Value du contrôle ScrollBar change lorsque l'utilisateur clique sur la zone entre le curseur de défilement et la flèche de défilement. Le sens du déplacement est toujours vers l'emplacement sur lequel l'utilisateur clique. Par exemple, dans un contrôle ScrollBar horizontal, un clic à gauche du curseur de défilement déplace celui-ci vers la gauche. Dans un contrôle ScrollBar vertical, un clic au-dessus du curseur de défilement déplace celui-ci vers le haut.

La propriété LargeChange n'a pas d'unités. Tout nombre entier est une valeur valide pour la propriété LargeChange. La plage de valeurs recommandée est de -32.767 à +32.767, et cette valeur doit se situer entre les valeurs des propriétés Max et Min du contrôle ScrollBar.


LayoutEffect, propriété

Spécifie si un contrôle a été déplacé lors d'une modification de la présentation.

Syntaxe

object.LayoutEffect

La syntaxe de la propriété LayoutEffect comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

La propriété LayoutEffect renvoie les valeurs suivantes :

Constante	Valeur	Description
fmLayoutEffectNone	0	Le contrôle n'a pas été déplacé.
fmLayoutEffectInitiate	1	Le contrôle a été déplacé.
Remarques

La propriété LayoutEffect est en lecture seule et n'est disponible que dans l'événement Layout. L'événement Layout est déclenché par la méthode Move si l'argument Layout est True.

L'événement Layout n'est pas déclenché lorsque vous modifiez les valeurs des propriétés Left, Top, Height ou Width d'un contrôle.

L'événement Layout affecte la propriété LayoutEffect pour tous les contrôles impliqués dans une opération de déplacement. Par exemple, si vous déplacez un groupe de contrôle, la propriété LayoutEffect de chaque contrôle est affecté.


Left, Top, propriétés

Distance entre un contrôle et le bord gauche ou supérieur de la feuille qui le contient.

Syntaxe

object.Left [= Single]

object.Top [= Single]

La syntaxe des propriétés Left et Top comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Expression numérique spécifiant les coordonnées d'un objet.
Valeurs

La valeur 0 affectée aux propriétés Left ou Top place le bord du contrôle à la gauche ou au bord supérieur de son conteneur.

Remarques

Pour la plupart des systèmes, la plage des valeurs recommandée pour les propriétés Left et Top est comprise entre -32.767 et +32.767. D'autres valeurs peuvent aussi fonctionner selon la configuration de votre système. Pour un contrôle ComboBox, les valeurs des propriétés Left et Top s'appliquent à la partie texte du contrôle, et non à la partie liste. Lorsque vous déplacez ou dimensionnez un contrôle, la nouvelle valeur de la propriété Left est automatiquement entrée dans la feuille de propriétés. Lorsque vous imprimez une feuille, l'emplacement horizontal ou vertical du contrôle est déterminé par la valeur de sa propriété Left ou Top.


LineCount, propriété

Renvoie le nombre de lignes de texte d'un contrôle TextBox ou ComboBox.

Syntaxe

object.LineCount

La syntaxe de la propriété LineCount comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La propriété LineCount est en lecture seule.

Note  Un contrôle ComboBox n'a qu'une ligne.


List, propriété

Renvoie ou définit la liste des entrées d'un contrôle ListBox ou ComboBox.

Syntaxe

object.List( row, column ) [= Variant]

La syntaxe de la propriété List comprend les éléments suivants :

Élément	Description
object	Objet valide.
row	Nombre entier compris entre zéro et le nombre d'entrée dans la liste moins 1.
column	Nombre entier compris entre zéro et le nombre de colonnes moins 1.
Variant	Facultatif. Contenu de l'entrée spécifiée dans le contrôle ListBox ou ComboBox.
Valeurs

La numérotation des lignes et colonnes commence à zéro. C'est-à-dire, le numéro de ligne de la première ligne de la liste est zéro ; le numéro de colonne de la première colonne est zéro. Le numéro de la deuxième ligne ou colonne est 1, et ainsi de suite.

Remarques

La propriété List fonctionne avec les propriétés ListCount et ListIndex. Utilisez la propriété List pour accéder à ces éléments. Une liste est un tableau de Variants ; chaque élément de la liste a un numéro de ligne et un numéro de colonne.

Initialement, les contrôles ComboBox et ListBox contiennent une liste vide.

Note  Pour spécifier les éléments que vous voulez afficher dans un contrôle ComboBox ou ListBox, utilisez la méthode AddItem. Pour retirer des éléments, utilisez la méthode RemoveItem.

Utilisez List pour copier la totalité d'un tableau bidimensionnel de valeurs sur un contrôle. Utilisez AddItem pour charger un tableau unidimensionnel ou un élément particulier.


ListCount, propriété

Renvoie le nombre d'entrées de liste d'un contrôle.

Syntaxe

object.ListCount

La syntaxe de la propriété ListCount comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La propriété ListCount est en lecture seule. La propriété ListCount est le nombre de lignes sur lesquelles vous pouvez effectuer un défilement. La valeur de la propriété ListRows est le maximum à afficher en une seule fois. La valeur de la propriété ListCount est toujours supérieur de 1 à la valeur la plus grande de la propriété ListIndex, parce que les numéros d'index commencent par zéro et que le nombre d'éléments commence par un 1. Si aucun élément n'est sélectionné, la valeur de la propriété ListCount est 0 et celle de la propriété ListIndex est –1.


ListIndex, propriété

Identifie l'élément actuellement sélectionné dans un contrôle ListBox ou ComboBox.

Syntaxe

object.ListIndex [= Variant]

La syntaxe de la propriété ListIndex comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. Élément actuellement sélectionné dans le contrôle
Remarques

La propriété ListIndex contient un index de la ligne sélectionnée dans le liste. Les valeurs de la propriété ListIndex sont comprise entre –1 et le nombre total de ligne de la liste moins 1 (c'est-à-dire, ListCount – 1). Lorsqu'aucune ligne est sélectionnée, la propriété ListIndex renvoie la valeur –1. Quand l'utilisateur sélectionne une ligne d'un contrôle ListBox ou ComboBox, le système définit la valeur de la propriété ListIndex. La valeur de la propriété ListIndex de la première ligne de la liste est zéro, la valeur de la deuxième liste est 1, et ainsi de suite.

Note  Si vous utilisez la propriété MultiSelect pour créer un contrôle ListBox permettant plusieurs sélections, la propriété Selected du contrôle ListBox (plutôt que la propriété ListIndex) identifie les lignes sélectionnées. La propriété Selected est un tableau ayant le même nombre de valeurs que le nombre de lignes du contrôle ListBox. Pour chaque ligne de la zone de liste, la propriété Selected contient la valeur True si la ligne est sélectionné, et False si elle ne l'est pas. Dans un contrôle ListBox permettant plusieurs sélections, la propriété ListIndex renvoie l'index de la ligne ayant le focus, que celle-ci soit ou non actuellement sélectionnée.

La valeur de la propriété ListIndex est aussi disponible en affectant la valeur 0 à la propriété BoundColumn pour une liste modifiable ou une zone de liste. Si la valeur de la propriété BoundColumn est 0, la source de données sous-jacente de laquelle dépend la liste modifiable ou la zone de liste contient la même valeur d'index de liste que la propriété ListIndex.


ListRows, propriété

Spécifie le nombre maximal de lignes à afficher dans la liste.

Syntaxe

object.ListRows [= Long]

La syntaxe de la propriété ListRows comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Nombre entier indiquant le nombre maximal de lignes. La valeur par défaut est 8.
Remarques

Si le nombre d'éléments de la liste dépasse la valeur de la propriété ListRows, une barre de défilement apparaît sur le bord droit de la partie zone de liste de la liste modifiable.


ListStyle, propriété

Spécifie l'aspect à l'écran de la liste d'un contrôle ListBox ou ComboBox.

Syntaxe

object.ListStyle [= fmListStyle]

La syntaxe de la propriété ListStyle comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmListStyle	Facultatif. Style à l'écran de la liste.
Valeurs

Les valeurs de fmListStyle sont les suivantes :

Constante	Valeur	Description
fmListStylePlain	0	A l'aspect d'une zone de liste normale, l'arrière-plan des éléments étant en surbrillance.
fmListStyleOption	1	Affiche des boutons d'option, ou de cases à cocher pour une liste à plusieurs sélections (par défaut). Quand l'utilisateur sélectionne un élément du groupe, le bouton d'option associé à cet élément est sélectionné et les boutons d'option des autres éléments du groupe sont libérés.
Remarques

La propriété ListStyle vous permet de modifier l'aspect à l'écran d'un contrôle ListBox ou ComboBox. En spécifiant une valeur différente de fmListStylePlain, vous pouvez présenter le contenu d'un contrôle comme étant un groupe d'élément distinct, chacun ayant un indicateur visuel précisant s'il est ou non sélectionné.

Si le contrôle gère une sélection unique (la valeur de la propriété MultiSelect est fmMultiSelectSingle), l'utilisateur peut appuyer sur un bouton du groupe. Si le contrôle gère plusieurs sélections, l'utilisateur peut appuyer sur deux boutons ou plus du groupe.


ListWidth, propriété

Spécifie la largeur de la liste d'un contrôle ComboBox.

Syntaxe

object.ListWidth [= Variant]

La syntaxe de la propriété ListWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. Largeur de la liste. Si la valeur est 0, la liste sera de la même largeur que le contrôle ComboBox. La valeur par défaut consiste à rendre la liste aussi large que la partie texte du contrôle.
Remarques

Si vous voulez afficher une liste sur plusieurs colonnes, tapez une valeur qui élargira suffisamment la zone de liste pour accueillir toutes les colonnes.

Conseil : Lors de la conception des listes modifiables, veillez à laisser suffisamment d'espace pour afficher vos données et pour la barre de défilement vertical.


Locked, propriété

Spécifie si un contrôle peut être modifié.

Syntaxe

object.Locked [= Boolean]

La syntaxe de la propriété Locked comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le contrôle peut être modifié.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Vous ne pouvez pas modifier la valeur.
False	Vous pouvez modifier la valeur (par défaut).
Remarques

Lorsqu'un contrôle est verrouillé et activé, il peut encore déclencher des événements et recevoir le focus.


MatchEntry, propriété

Renvoie ou définit une valeur indiquant la façon dont un contrôle ListBox ou ComboBox fait des recherche dans ses listes pendant la saisie de l'utilisateur.

Syntaxe

object.MatchEntry [= fmMatchEntry]

La syntaxe de la propriété MatchEntry comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmMatchEntry	Facultatif. Règle utilisée pour faire correspondre les entrées de la liste.
Valeurs

Les valeurs de fmMatchEntry sont les suivantes :

Constante	Valeur	Description
fmMatchEntryFirstLetter	0	Correspondance de base. Le contrôle recherche l'entrée suivante qui commence par le caractère saisi. La frappe répétée de la même lettre parcourt toutes les entrées commençant par cette lettre.
fmMatchEntryComplete	1	Correspondance étendue. Pour la frappe de chaque caractère, le contrôle recherche une entrée correspondant à tous les caractères saisis (par défaut).
fmMatchEntryNone	2	Aucune correspondance.
Remarques

La propriété MatchEntry recherche des entrées à partir de la propriété TextColumn d'un contrôle ListBox ou ComboBox.

Le contrôle recherche dans la colonne identifiée par la propriété TextColumn une entrée correspondant à la saisie de l'utilisateur. Lorsqu'une correspondance est trouvée, la ligne contenant la correspondance est sélectionné, le contenu de la colonne est affiché et celui de sa propriété BoundColumn devient la valeur du contrôle. Si la correspondance n’est pas ambiguë, le résultat de la correspondance déclenche l'événement Click.

Le contrôle déclenche l'événement Click dès que l'utilisateur tape une suite de caractères correspondant exactement à l'entrée de la liste. Pendant que l'utilisateur tape, l'entrée est comparée à la ligne courante de la liste et à la ligne suivante. Lorsque l'entrée ne correspond qu'à la ligne courante, la correspondance est non ambiguë.

Dans Microsoft Forms, ceci est vrai que la liste soit ou non triée. Cela signifie que le contrôle trouve la première occurrence qui correspond à l'entrée en fonction de l'ordre des éléments de liste. Par exemple, la saisie de “abc” ou “bc” déclenche l'événement Click pour la liste suivante :

abcde

bcdef

abcxyz

bchij

Notez que dans chacun des cas, l'entrée correspondante n'est pas unique ; cependant, elle est suffisamment différente de l'entrée adjacente pour que le contrôle interprète la correspondance comme étant non ambiguë et déclenche l'événement Click.


MatchFound, propriété

Indique si le texte qu'un utilisateur saisi dans une liste modifiable correspond à des entrées de la liste.

Syntaxe

object.MatchFound

La syntaxe de la propriété MatchFound comprend les éléments suivants :

Élément	Description
object	Objet valide.
Valeurs renvoyées

Les valeurs renvoyées de la propriété MatchFound sont les suivantes :

Valeur	Description
True	Le contenu de la propriété Value correspond à un des enregistrements de la liste.
False	Le contenu de la propriété Value ne correspond à aucun des enregistrements de la liste (par défaut).
Remarques

La propriété MatchFound est en lecture seule. Elle n'est pas utilisable lorsque la propriété MatchEntry est définie sur fmMatchEntryNone.


MatchRequired, propriété

Spécifie si une valeur saisie dans la partie texte d'un contrôle ComboBox doit correspondre à une entrée de la partie liste existante du contrôle. L'utilisateur peut taper des valeurs non correspondantes, mais ne peut pas quitter le contrôle sans qu'une valeur correspondante soit saisie.

Syntaxe

object.MatchRequired [= Boolean]

La syntaxe de la propriété MatchRequired comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le texte saisi doit correspondre à un élément existant de la liste.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le texte saisi doit correspondre à une entrée de la liste.
False	Le texte saisi peut être différent de toutes les entrées existantes de la liste (par défaut).
Remarques

Si valeur de la propriété MatchRequired est True, l'utilisateur ne peut pas quitter le contrôle ComboBox tant que le texte saisi ne correspond pas à une entrée de la liste existante. MatchRequired maintient l'intégrité de la liste en exigeant de l'utilisateur qu'il sélectionne une entrée existante.

Note  Tous les conteneurs n'imposent pas cette propriété.


Max, Min, propriétés

Spécifient les valeurs maximale et minimale acceptables pour la propriété Value d'un contrôle ScrollBar ou SpinButton.

Syntaxe

object.Max [= Long]

object.Min [= Long]

La syntaxe des propriétés Max et Min comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Expression numérique spécifiant la valeur maximale ou minimale de la propriété Value.
Remarques

Un clic sur un contrôle SpinButton ou un déplacement du curseur de défilement dans un contrôle ScrollBar change la propriété Value du contrôle.

La valeur de la propriété Max correspond à la position la plus basse d'un contrôle ScrollBar vertical ou à la position la plus à droite d'un contrôle ScrollBar. Horizontal. La valeur de la propriété Min correspond à la position la plus haute d'un contrôle ScrollBar vertical ou à la position la plus à gauche d'un contrôle ScrollBar horizontal.

Cette propriété accepte comme valeur tout nombre entier. La plage des valeurs recommandée est comprise entre -32.767 et +32.767. La valeur par défaut est 1.

Note  Les propriétés Min et Max font référence à des emplacements et non à des valeurs relatives sur le contrôle ScrollBar. C'est-à-dire, la valeur de la propriété Max peut être inférieure à la valeur de la propriété Min. Dans ce cas, un déplacement vers la position Max (bas) signifie une diminution de la propriété Value ; un déplacement vers la position Min (haut) signifie une augmentation de la propriété Value.


MaxLength, propriété

Spécifie le nombre maximal de caractères qu'un utilisateur peut taper dans un contrôle TextBox ou ComboBox.

Syntaxe

object.MaxLength [= Long]

La syntaxe de la propriété MaxLength comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Nombre entier indiquant le nombre autorisé de caractères.
Remarques

Pour la propriété MaxLength la valeur 0 implique qu'il n'y a pas de limite autre que celle créée par les contraintes de mémoire.


MouseIcon, propriété

Affecte une icône personnalisée à un objet.

Syntaxe

object.MouseIcon = LoadPicture( pathname )

La syntaxe de la propriété MouseIcon comprend les éléments suivants :

Élément	Description
object	Objet valide.
pathname	Expression de chaîne spécifiant le chemin d'accès et le nom du fichier contenant l'icône personnalisée.
Remarques

La propriété MouseIcon est valide lorsque la propriété MousePointer est définie sur 99. L'icône souris d'un objet est l'image apparaissant lorsque l'utilisateur déplace la souris sur cet objet.

Pour affecter une image au pointeur de la souris, vous pouvez affecter un dessin à la propriété MouseIcon ou charger un dessin d'un fichier au moyen de la fonction LoadPicture.


MousePointer, propriété

Spécifie le type de pointeur affiché lorsque l'utilisateur place la souris au-dessus d'un objet particulier.

Syntaxe

object.MousePointer [= fmMousePointer]

La syntaxe de la propriété MousePointer comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmMousePointer	Facultatif. Forme que vous voulez pour le pointeur de la souris.
Valeurs

Les valeurs de fmMousePointer sont les suivantes :

Constante	Valeur	Description
fmMousePointerDefault	0	Pointeur standard. L'image est déterminée par l'objet (par défaut).
fmMousePointerArligne	1	Flèche.
fmMousePointerCross	2	Pointeur en croix.
fmMousePointerIBeam	3	Pointeur en I.
fmMousePointerSizeNESW	6	Double flèche pointant vers le nord-est et sud-ouest.
fmMousePointerSizeNS	7	Double flèche pointant vers le nord et le sud.
fmMousePointerSizeNWSE	8	Double flèche pointant vers le nord-ouest et sud-est.
fmMousePointerSizeWE	9	Double flèche pointant vers l'ouest et l'est.
fmMousePointerUpArligne	10	flèche vers le haut.
fmMousePointerHourglass	11	Sablier.
fmMousePointerNoDrop	12	Symbole "Interdit" (cercle barré en diagonale) au-dessus de l'objet déplacé. Indique une cible de déplacement incorrecte.
fmMousePointerAppStarting	13	Flèche avec sablier.
fmMousePointerHelp	14	Flèche avec point d'interrogation.
fmMousePointerSizeAll	15	Curseur fléché en croix (flèches pointant vers le nord, sud, est et ouest).
fmMousePointerCustom	99	Utilise l'icône spécifiée par la propriété MouseIcon.
Remarques

Utilisez la propriété MousePointer lorsque vous voulez indiquer des changements de la fonctionnalité lorsque le pointeur de la souris passe sur des contrôles d'une feuille. Par exemple, la valeur Sablier (11) indique que l'utilisateur doit attendre la fin d'un processus ou d'une opération.

Certaines icônes varient en fonction des définitions du système, comme les icônes associées à des thèmes du bureau.


MultiLine, propriété

Spécifie si un contrôle peut accepter et afficher plusieurs lignes de texte.

Syntaxe

object.MultiLine [= Boolean]

La syntaxe de la propriété MultiLine comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le contrôle gère plusieurs lignes de texte.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le texte est affiché sur plusieurs lignes (par défaut).
False	Le texte n'est pas affiché sur plusieurs lignes.
Remarques

Un contrôle TextBox à plusieurs lignes permet des retours à la ligne absolus et ajuste le nombre de lignes sur la quantité de texte contenu. Si nécessaire, un contrôle à plusieurs lignes peut avoir des barres de défilement vertical.

Un contrôle TextBox à ligne unique ne permet pas de retour à la ligne absolu et n'utilise pas de barres de défilement vertical.

Les contrôles à ligne unique ignorent la valeur de la propriété WordWrap.

Note   Si vous changez la propriété MultiLine pour False dans un contrôle TextBox multilignes, tous les caractères du contrôle TextBox seront regroupés en une seule ligne, y compris les caractères non imprimables, comme les retours chariot ou les caractères de nouvelle ligne.


MultiRow, propriété

Spécifie si le contrôle accepte plusieurs rangées d’onglets.

Syntaxe

object.MultiRow [= Boolean]

La syntaxe de la propriété MultiRow comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le contrôle accepte plusieurs rangées d’onglets.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Autorise plusieurs rangées d’onglets.
False	Limite les onglets à une seule rangée (par défaut).
Remarques

La largeur et le nombre d’onglets déterminent le nombre de rangées. La modification de la taille du contrôle modifie aussi le nombre de rangées. Le développeur peut ainsi redimensionner le contrôle et afin que le nombre de rangées d’onglets s'adapte à la taille du contrôle. Si la valeur de la propriété. MultiRow est False, une coupure s’affiche alors si la largeur totale des onglets dépasse celle du contrôle.

Si la valeur de la propriété MultiRow est False et les onglets tronqués, une petite barre de défilement apparaît sur le contrôle TabStrip pour permettre le défilement vers les autres onglets ou pages.


MultiSelect, propriété

Indique si l'objet permet plusieurs sélections.

Syntaxe

object.MultiSelect [= fmMultiSelect]

La syntaxe de la propriété MultiSelect comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmMultiSelect	Facultatif. Mode de sélection que le contrôle utilise.
Valeurs

Les valeurs de fmMultiSelect sont les suivantes :

Constante	Valeur	Description
fmMultiSelectSingle	0	Un seul élément peut être sélectionné (par défaut).
fmMultiSelectMulti	1	Une pression sur ESPACE ou un clic sélection ou libère un élément de la liste.
fmMultiSelectExtended	2	Une pression sur MAJ et un clic sur la souris, ou une pression sur MAJ et sur l'une des touches de direction étend la sélection depuis l'élément précédemment sélectionné jusqu'à l'élément courant. Une pression sur CTRL et un clic sur la souris sélectionne ou libère l'élément.
Remarques

Lorsque la propriété MultiSelect est définie pour des valeurs de type Extended ou Simple, vous devez utiliser la propriété Selected de la zone de liste pour déterminer les éléments sélectionnés. La propriété Value du contrôle est toujours Null.

La propriété ListIndex renvoie l'index de la ligne ayant le focus.


Name, propriété

Spécifie le nom d'un contrôle ou d'un objet, ou le nom d'une police à associer à un objet Font.

Syntaxe

Pour l’objet Font
Font.Name [= String]

Pour tous les autres contrôles et objets
object.Name [= String]

La syntaxe de la propriété Name comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Nom que vous voulez affecter à la police ou au contrôle.
Valeurs

Les directives pour l'affectation d'une chaîne à une propriété Name, telles que la longueur maximale du nom, varient d'une application à une autre.

Remarques

Pour les objets, la valeur par défaut de Name est constituée du nom de la classe de l'objet suivie d'un nombre entier. Par exemple, le nom par défaut du premier contrôle TextBox que vous placez sur une feuille est TextBox1. Le nom par défaut du deuxième contrôle TextBox est TextBox2.

Vous pouvez définir la propriété Name d'un contrôle depuis la feuille de propriétés de celui-ci ou, pour des contrôles ajoutés au moment de l'exécution, en utilisant des instructions du programme. Si vous ajoutez un contrôle au moment de la conception, vous ne pouvez pas modifier sa propriété Name au moment de l'exécution.

Chaque contrôle ajouté à une feuille au moment de sa conception doit avoir un nom unique.

Pour l’objet Font, la propriété Name identifie une police particulière à utiliser dans la partie texte d'un contrôle, d'un objet ou d'une feuille. L'aspect de la police à l'écran et à l'impression peut différer, en fonction de votre ordinateur et de votre imprimante. Si vous sélectionnez une police que votre système ne peut pas afficher ou qui n'est pas installée, Windows la remplace par une police similaire.


Object, propriété

Remplace une propriété ou méthode standard lorsqu’un nouveau contrôle a une propriété ou une méthode du même nom.

Syntaxe

object.Object[.property |.method]

La syntaxe de la propriété Object comprend les éléments suivants :

Élément	Description
object	Nom d’un objet que vous avez ajouté à la boîte à outils Microsoft Forms Toolbox.
property	Facultatif. Propriété personnalisée dont le nom est identique à celui d'une propriété standard Microsoft Forms.
method	Facultatif. Méthode dont le nom est identique à celui d'une méthode standard Microsoft Forms.
Remarques

Object est en lecture seule.

Si vous ajoutez un nouveau contrôle à la boîte à outils Microsoft Forms , il se peut que le contrôle ajouté ait une propriété ou une méthode du même nom que la propriété ou méthode standard Microsoft Forms. La propriété Object vous permet d’utiliser la propriété ou la méthode du contrôle ajouté, plutôt que la propriété ou la méthode standard.


OldHeight, OldWidth, propriétés

Renvoie la hauteur ou la largeur précédente du contrôle, en points.

Syntaxe

object.OldHeight

object.OldWidth

La syntaxe des propriétés OldHeight et OldWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

OldHeight et OldWidth sont en lecture seule.

Les propriétés OldHeight et OldWidth sont automatiquement mises à jour lorsque vous déplacez ou dimensionnez un contrôle. Si vous changez la taille d'un contrôle, les propriétés Height et Width stockent la nouvelle hauteur OldHeight et OldWidth stocke la hauteur précédente.

Ces propriétés ne sont valides que dans l'événement Layout.


OldLeft, OldTop, propriétés

Renvoie la distance, en points, entre la position précédente d'un contrôle et le bord gauche ou supérieur de la feuille qui le contient.

Syntaxe

object.OldLeft

object.OldTop

La syntaxe des propriétés OldLeft et OldTop comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

OldLeft et OldTop sont en lecture seule.

Les propriétés OldLeft et OldTop sont automatiquement mises à jour lorsque vous déplacez ou dimensionnez un contrôle. Si vous déplacez un contrôle, les propriétés Left et Top stockent la nouvelle distance du contrôle jusqu'au bord gauche de son conteneur et OldLeft et OldTop stockent la précédente valeur de Left.

OldLeft et OldTop ne sont valides que dans l'événement Layout.


Orientation, propriété

Spécifie si le contrôle SpinButton ou ScrollBar est orienté verticalement ou horizontalement.

Syntaxe

object.Orientation [= fmOrientation]

La syntaxe de la propriété Orientation comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmOrientation	Facultatif. Orientation du contrôle.
Valeurs

Les valeurs de fmOrientation sont les suivantes :

Constante	Valeur	Description
fmOrientationAuto	–1	Détermine automatiquement l'orientation en fonction des dimensions du contrôle (par défaut).
fmOrientationVertical	0	Le contrôle est orienté verticalement.
fmOrientationHorizontal	1	Le contrôle est orienté horizontalement.
Remarques

Si vous spécifiez une orientation automatique, la hauteur et la largeur du contrôle déterminent son aspect horizontal ou vertical. Par exemple, si le contrôle est plus large que haut, il apparaît horizontalement ; s'il est plus haut que large, le contrôle apparaît verticalement.


Parent, propriété

renvoie le nom de la feuille, de l'objet ou de la collection contenant un contrôle, un objet ou une collection spécifique.

Syntaxe

object.Parent

La syntaxe de la propriété Parent comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

Parent est en lecture seule.

Utilisez la propriété Parent pour accéder aux propriétés, méthodes ou contrôles du parent d'un objet.

Cette propriété est utile dans une application dans laquelle vous placez les objets en tant qu'arguments. Par exemple, vous pouvez placer une variable de contrôle dans la procédure générale d'un module et utiliser la propriété Parent pour accéder à sa feuille parent.


PasswordChar, propriété

Spécifie si des caractères de place réservée sont affichés à la place des caractères actuellement saisis dans le contrôle TextBox.

Syntaxe

object.PasswordChar [= String]

La syntaxe de la propriété PasswordChar comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Expression de chaîne spécifiant le caractère de place réservée (caractère affiché à la place des caractères saisis par l’utilisateur).
Remarques

Vous pouvez utiliser la propriété PasswordChar pour protéger des informations confidentielles, telles que les mots de passe ou les codes de sécurité. La propriété PasswordChar est le caractère qui apparaît dans un contrôle à la place des caractères réels saisis par l'utilisateur. Si vous ne spécifiez pas un caractère, le contrôle affiche les caractères que tape l'utilisateur.


Picture, propriété

Spécifie l'image bitmap à afficher sur un objet.

Syntaxe

object.Picture = LoadPicture( pathname )

La syntaxe de la propriété Picture comprend les éléments suivants :

Élément	Description
object	Objet valide.
pathname	Chemin d'accès complet vers un fichier d'image.
Remarques

Lors de la conception d'une feuille, vous pouvez utiliser la fenêtre de propriétés du contrôle pour affecter une image bitmap à la propriété Picture. Lors de l'exécution d'une feuille, vous devez utiliser la fonction LoadPicture pour affecter une image bitmap à la propriété Picture.

Pour retirer une image affectée à un contrôle, cliquez sur la valeur de la propriété Picture dans la page de propriétés, puis appuyez sur SUPPR. La touche RET.ARR ne supprime pas l'image.

Note  Pour les contrôles ayant des légendes, utilisez la propriété PicturePosition pour spécifier ou afficher l'image sur l'objet. Utilisez la propriété PictureSizeMode pour déterminer la façon dont l'image remplit l'objet.

Les images transparentes sont parfois floues. Si leur aspect vous déplaît, affichez l’image sur un contrôle qui accepte les images opaques, comme Image et MultiPage.


PictureAlignment, propriété

Spécifie l'emplacement d'une image de fond.

Syntaxe

object.PictureAlignment [= fmPictureAlignment]

La syntaxe de la propriété PictureAlignment comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmPictureAlignment	Facultatif. Position sur laquelle l'image s'aligne avec le contrôle.
Valeurs

Les valeurs de fmPictureAlignment sont les suivantes :

Constante	Valeur	Description
fmPictureAlignmentTopLeft	0	Angle supérieur gauche.
fmPictureAlignmentTopRight	1	Angle supérieur droit.
fmPictureAlignmentCenter	2	Centre.
fmPictureAlignmentBottomLeft	3	Angle inférieur gauche.
fmPictureAlignmentBottomRight	4	Angle inférieur droit.
Remarques

La propriété PictureAlignment identifie le coin de l'image identique au coin correspondant du contrôle ou du conteneur dans lequel l'image est utilisée.

Par exemple, si la valeur de la propriété PictureAlignment est fmPictureAlignmentTopLeft, cela signifie que le coin supérieur gauche coïncide avec le coin supérieur gauche du contrôle ou du conteneur. Si la valeur de la propriété PictureAlignment est fmPictureAlignmentCenter, l'image est centrée par rapport à la hauteur et à la largeur du contrôle ou du conteneur.

Si vous mettez en mosaïque une image sur un contrôle ou conteneur, la valeur de PictureAlignment affecte la mosaïque. Par exemple, si la valeur de PictureAlignment est fmPictureAlignmentUpperLeft, la première copie de l'image est placée dans le coin supérieur gauche du contrôle ou conteneur et les copies supplémentaires sont disposées en mosaïque de gauche à droite sur chaque ligne. Si la valeur de PictureAlignment est fmPictureAlignmentCenter, la première copie de l'image est disposée au centre du contrôle ou conteneur, les copies supplémentaires sont disposées à gauche et à droite pour compléter la ligne.

Note  Pour la valeur fmSizeModeStretch la propriété PictureSizeMode outrepasse la propriété PictureAlignment. Lorsque la valeur de la propriété PictureSizeMode est fmSizeModeStretch, l'image remplit la totalité du contrôle ou conteneur.


PicturePosition, propriété

Spécifie l'emplacement de l'image relative à sa légende.

Syntaxe

object.PicturePosition [= fmPicturePosition]

La syntaxe de la propriété PicturePosition comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmPicturePosition	Facultatif. Spécifie la façon dont l'image s'aligne sur son conteneur.
Valeurs

Les valeurs de fmPicturePosition sont les suivantes :

Constante	Valeur	Description
fmPicturePositionLeftTop	0	L'image apparaît à gauche de la légende qui s’aligne en haut de l'image.
fmPicturePositionLeftCenter	1	L'image apparaît à gauche de la légende qui s'aligne au centre de l'image.
fmPicturePositionLeftBottom	2	L'image apparaît à gauche de la légende qui s'aligne en bas de l'image.
fmPicturePositionRightTop	3	L'image apparaît à droite de la légende qui s'aligne en haut de l'image.
fmPicturePositionRightCenter	4	L'image apparaît à droite de la légende qui s'aligne au centre de l'image.
fmPicturePositionRightBottom	5	L'image apparaît à droite de la légende qui s'aligne en bas de l'image.
fmPicturePositionAboveLeft	6	L'image apparaît au-dessus de la légende qui s'aligne sur le bord droit de l'image.
fmPicturePositionAboveCenter	7	L'image apparaît au-dessus de la légende qui est centrée sous l'image (par défaut).
fmPicturePositionAboveRight	8	L'image apparaît au-dessus de la légende qui s'aligne sur le bord droit de l'image.
fmPicturePositionBelowLeft	9	L'image apparaît en dessous de la légende qui s'aligne sur le bord droit de l'image.
fmPicturePositionBelowCenter	10	L'image apparaît en dessous de la légende qui est centrée au-dessus de l'image.
fmPicturePositionBelowRight	11	L'image apparaît en dessous de la légende qui s'aligne sur le bord droit de l'image.
fmPicturePositionCenter	12	L'image apparaît au centre du contrôle. La légende est centrée horizontalement et verticalement au-dessus de l'image.
Remarques

L’image et la légende formant une unité sont centrées sur le contrôle. En l'absence de légende, l'emplacement de l'image se définit par rapport au centre du contrôle.

Cette propriété est ignorée si la propriété Picture ne spécifie aucune image.


PictureSizeMode, propriété

Spécifie comment afficher une image de fond sur un contrôle, une feuille ou une page.

Syntaxe

object.PictureSizeMode [= fmPictureSizeMode]

La syntaxe de la propriété PictureSizeMode comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmPictureSizeMode	Facultatif. Action à effectuer si l'image et la feuille ou la page qui la contienne ne sont pas de la même taille.
Valeurs

Les valeurs de fmPictureSizeMode sont les suivantes :

Constante	Valeur	Description
fmPictureSizeModeClip	0	Découpe la partie de l'image plus grande que la feuille ou la page (par défaut).
fmPictureSizeModeStretch	1	Étire l'image pour remplir la feuille ou la page. Cette définition déforme l'image dans le sens horizontal ou vertical.
fmPictureSizeModeZoom	3	Agrandit l'image mais ne la déforme ni dans le sens horizontal, ni dans le sens vertical.
Remarques

La valeur fmPictureSizeModeClip indique que vous voulez afficher l'image dans ses taille et échelle initiales. Si la feuille ou page est plus petite que l'image, cette définition n'affiche que la partie de l'image qui tient dans la feuille ou page.

Les valeurs fmPictureSizeModeStretch et fmPictureSizeModeZoom agrandissent toutes les deux l'image, mais la valeur fmPictureSizeModeStretch provoque une distorsion. La valeur fmPictureSizeModeStretch agrandit l'image dans le sens vertical et horizontal jusqu'à ce que celle-ci atteigne les bords correspondants du conteneur ou contrôle. La valeur fmPictureSizeModeZoom agrandit l'image jusqu'à ce qu'elle atteigne les bords horizontaux ou verticaux du conteneur ou contrôle. Si l'image atteint en premier les bords horizontaux, la distance restante jusqu'aux bords verticaux reste vierge. Si elle atteint en premier les bords horizontaux, la distance restante jusqu'aux bords horizontaux reste vierge.


PictureTiling, propriété

Vous permet de mettre une image en mosaïque dans une feuille ou page.

Syntaxe

object.PictureTiling [= Boolean]

La syntaxe de la propriété PictureTiling comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si une image est répétée sur un arrière-plan.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	L'image est en mosaïque sur l'arrière-plan.
False	L'image n'est pas en mosaïque sur l'arrière-plan (par défaut).
Remarques

Si une image est plus petite que la feuille ou page qui la contient, vous pouvez la mettre en mosaïque sur la forme ou page.

La mosaïque dépend de la valeur actuelle des propriétés PictureAlignment et PictureSizeMode. Par exemple, si la valeur de PictureAlignment est fmPictureAlignmentTopLeft, la mosaïque commence en haut à gauche et répète l'image sur la feuille ou page et descend sur toute la hauteur de la feuille ou page. Si la valeur de PictureSizeMode est fmPictureSizeModeClip, la mosaïque découpe le dernier élément s'il ne tient pas complètement sur la feuille ou page.


ProportionalThumb, propriété

Spécifie si la taille du curseur de défilement est proportionnel à la zone de défilement ou fixe.

Syntaxe

object.ProportionalThumb [= Boolean]

La syntaxe de la propriété ProportionalThumb comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si la taille du curseur de défilement est proportionnel ou fixe.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le curseur de défilement est proportionnel à la zone de défilement (par défaut).
False	Le curseur de défilement est de taille fixe.
Remarques

La taille d'un curseur de défilement proportionnel représente sur le plan graphique le pourcentage de l'objet qui est visible de la fenêtre. Par exemple, si 75 % d'un objet est visible, le curseur de défilement couvre les trois quarts de la zone de défilement de la barre de défilement.

Si le curseur de défilement est de taille fixe, le système détermine sa taille en fonction de la hauteur et de la largeur de la barre de défilement.


RowSource, propriété

Spécifie la source de données fournissant une liste à un contrôle ComboBox ou ListBox.

Syntaxe

object.RowSource [= String]

La syntaxe de la propriété RowSource comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Source de données de la liste du contrôle ComboBox ou ListBox.
Remarques

la propriété RowSource accepte des plages de feuilles de travail de Microsoft Excel.


ScrollBars, propriété

Spécifie si un contrôle, une feuille ou une page affiche des barres de défilement vertical, des barres de défilement horizontal ou les deux.

Syntaxe

object.ScrollBars [= fmScrollBars]

La syntaxe de la propriété ScrollBars comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmScrollBars	Facultatif. Emplacement de l'affichage des barres de défilement.
Valeurs

Les valeurs de fmScrollBars sont les suivantes :

Constante	Valeur	Description
fmScrollBarsNone	0	N'affiche pas de barres de défilement (par défaut).
fmScrollBarsHorizontal	1	Affiche une barre de défilement horizontal.
fmScrollBarsVertical	2	Affiche une barre de défilement vertical.
fmScrollBarsBoth	3	Affiche une barre de défilement horizontal et vertical.
Remarques

Si la valeur de la propriété KeepScrollBarsVisible est True, toute barre de défilement sur une feuille ou page est toujours visible, que le contenu tienne ou non entre les bordures de l'objet.

Si elle est visible, une barre de défilement contraint son curseur de défilement à la zone visible de la barre de défilement. La plage d'une barre de défilement change lorsque la valeur de la propriété ScrollBars change, la barre de défilement change ou la taille visible change.

Si une barre de défilement n'est pas visible, vous pouvez alors définir sa position de défilement sur n'importe quelle valeur. Des valeurs négatives et des valeurs supérieures à la taille de défilement sont valides.

Pour un contrôle à ligne unique, vous pouvez afficher une barre de défilement horizontale en utilisant les propriétés ScrollBars et AutoSize. Les barres de défilement sont masquées ou affichées en fonction des règles suivantes :

1.	Lorsque la valeur de la propriété ScrollBars est fmScrollBarsNone, aucune barre de défilement n'est affichée.

2.	Lorsque la valeur de la propriété ScrollBars est fmScrollBarsHorizontal ou fmScrollBarsBoth, le contrôle affiche une barre de défilement horizontal si le texte sort de la zone d'édition et si le contrôle dispose d'un espace suffisant pour inclure une barre de défilement au-dessous de sa zone d'édition.

3.	Lorsque la valeur de la propriété AutoSize est True, le contrôle s'agrandit pour permettre l'ajout d'une barre de défilement jusqu'à ce qu'il soit à sa taille maximale ou proche de celle-ci.

Pour un contrôle TextBox à plusieurs lignes, vous pouvez afficher des barres de défilement en utilisant les propriétés ScrollBars, WordWrap et AutoSize. Les barres de défilement sont masquées ou affichées en fonction des règles suivantes :

1.	Lorsque la valeur de la propriété ScrollBars est fmScrollBarsNone, aucune barre de défilement n'est affichée.

2.	Lorsque la valeur de la propriété ScrollBars est fmScrollBarsVertical ou fmScrollBarsBoth, le contrôle affiche une barre de défilement vertical si le texte sort de la zone d'édition et si le contrôle dispose d'un espace suffisant pour inclure une barre de défilement au bord droit de sa zone d'édition.

3.	Lorsque la valeur de la propriété WordWrap est True, le contrôle à plusieurs lignes n'affiche pas de barre de défilement horizontal. La plupart des contrôles à plusieurs lignes n'utilisent pas de barre de défilement horizontal.

4.	Un contrôle à plusieurs lignes peut afficher une barre de défilement horizontal si les conditions suivantes se produisent simultanément :

•	La zone d'édition contient un mot dépassant la largeur de la zone d'édition.

•	Le contrôle a activé des barres de défilement horizontal et vertical.

•	Le contrôle dispose d'un espace suffisant pour inclure la barre de défilement sous la zone d'édition.

•	La valeur de la propriété WordWrap est False.


ScrollHeight, ScrollWidth, propriétés

Spécifie la hauteur, en points, de la zone totale pouvant être affichée en déplaçant les barres de défilement sur le contrôle, la feuille ou la page.

Syntaxe

object.ScrollHeight [= Single]

object.ScrollWidth [= Single]

La syntaxe des propriétés ScrollHeight et ScrollWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Hauteur ou largeur de la zone de défilement.


ScrollLeft, ScrollTop, propriétés

Spécifie la distance, en points, du bord gauche ou du bord supérieur de la feuille visible à partir du bord gauche ou du bord supérieur de la feuille, page ou contrôle logique.

Syntaxe

object.ScrollLeft [= Single]

object.ScrollTop [= Single]

La syntaxe des propriétés ScrollLeft et ScrollTop comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Distance à partir du bord de la feuille.
Remarques

La valeur minimale est 0 ; la valeur maximale est la différence entre la valeur de la propriété ScrollWidth et la valeur de la propriété Width pour la feuille ou la page.


Selected, propriété

Renvoie ou définit l'état de sélection des éléments dans un contrôle ListBox.

Syntaxe

object.Selected( index ) [= Boolean]

La syntaxe de la propriété Selected comprend les éléments suivants :

Élément	Description
object	Objet valide.
index	Nombre entier compris entre 0 et le nombre d'éléments de la liste moins un.
Boolean	Facultatif. Spécifie si un élément est sélectionné.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	L'élément est sélectionné.
False	L'élément n'est pas sélectionné.
Remarques

La propriété Selected est utile lorsque les utilisateurs peuvent effectuer plusieurs sélections. Vous pouvez utiliser cette propriété pour déterminer les lignes sélectionnées dans une zone de liste à plusieurs sélections. Vous pouvez également utiliser cette propriété pour sélectionner ou libérer des lignes d'une liste à partir de code.

La valeur par défaut de cette propriété se base sur l'état de sélection actuel du contrôle ListBox.

Pour des zones de liste à sélection unique, les propriétés Value ou ListIndex sont recommandées pour obtenir et définir la sélection. Dans ce cas, la propriété ListIndex renvoie l'index de l'élément sélectionné. Cependant, dans le cas de plusieurs sélections, la propriété ListIndex renvoie l'index de la ligne contenu dans le rectangle du focus, que la ligne soit réellement sélectionnée ou pas.

Lorsque la propriété MultiSelect  d'une zone de liste définie sur None, la valeur de la propriété Selected est True pour une seule ligne.

La saisie d'une valeur hors plage pour l'index ne génère pas de message d'erreur, mais ne modifie pas les éléments de la propriété.


SelectedItem, propriété

Renvoie l'objet Tab ou Page actuellement sélectionné.

Syntaxe

object.SelectedItem

La syntaxe de la propriété SelectedItem comprend les éléments suivants :

Élément	Description
object	TabStrip ou MultiPage valide.
Remarques

La propriété SelectedItem est en lecture seule à l'exécution. Elle permet de commander par programmation l'objet Tab ou Page actuellement sélectionné. Par exemple, vous pouvez utiliser la propriété SelectedItem pour affecter des valeurs aux propriétés de l'objet Tab ou Page.


SelectionMargin, propriété

Spécifie si l'utilisateur peut sélectionner une ligne de texte en cliquant dans la zone à gauche du texte.

Syntaxe

object.SelectionMargin [= Boolean]

La syntaxe de la propriété SelectionMargin comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si un clic dans la marge sélectionne une ligne de texte.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Un clic dans la marge sélectionne du texte (par défaut).
False	Un clic dans la marge ne sélectionne pas du texte.
Remarques

Lorsque la valeur de la propriété SelectionMargin est True, la marge de sélection occupe une mince bande le long du bord gauche de la zone d'édition d'un contrôle. Pour la valeur False, la totalité de la zone d'édition peut stocker du texte.

Si la valeur de la propriété SelectionMargin est True lors de l'impression d'un contrôle, la marge de sélection est également imprimée.


SelLength, propriété

Nombre de caractères sélectionnés dans une zone de liste ou la partie texte d'une liste modifiable.

Syntaxe

object.SelLength [= Long]

La syntaxe de la propriété SelLength comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Expression numérique spécifiant le nombre de caractères sélectionnés. Pour les propriétés SelLength et SelStart, la plage des valeurs valides est comprise entre 0 et le nombre total des caractères dans la zone d'édition d'un contrôle ComboBox ou TextBox.
Remarques

La propriété SelLength est toujours valide, même lorsque le contrôle n'a pas le focus. Une valeur de la propriété SelLength inférieure à zéro provoque une erreur. Une valeur de la propriété SelLength supérieure au nombre de caractères disponibles dans un contrôle entraîne une valeur égale au nombre de caractères dans le contrôle.

Note  La modification de la valeur de la propriété SelStart annule toute sélection existante dans le contrôle, place un point d'insertion dans le texte et affecte zéro à la propriété SelLength.

La valeur par défaut, zéro, indique qu'il n'y a pas de texte actuellement sélectionné.


SelStart, propriété

Indique le début du texte sélectionné, ou le point d'insertion s'il n'y a pas de texte sélectionné.

Syntaxe

object.SelStart [= Long]

La syntaxe de la propriété SelStart comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Expression numérique spécifiant le début du texte sélectionné. Pour les propriétés SelLength et SelStart, la plage des valeurs valides est comprise entre 0 et le nombre total des caractères dans la zone d'édition d'un contrôle ComboBox ou TextBox. La valeur par défaut est zéro.
Remarques

La propriété SelStart est toujours valide, même lorsque le contrôle n'a pas le focus. Une valeur de SelStart inférieure à zéro provoque une erreur. Une valeur de SelStart supérieure au nombre de caractères disponibles dans un contrôle entraîne une valeur égale au nombre de caractères dans le contrôle.

La modification de la valeur de la propriété SelStart annule toute sélection existante dans le contrôle, place un point d'insertion dans le texte et affecte la valeur zéro à la propriété SelLength.


SelText, propriété

Renvoie ou définit le texte sélectionné d'un contrôle.

Syntaxe

object.SelText [= String]

La syntaxe de la propriété SelText comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Expression de chaîne contenant le texte sélectionné.
Remarques

Si aucun caractère n'est sélectionné dans la zone d'édition du contrôle, la propriété SelText renvoie une chaîne de longueur zéro. Cette propriété est valide, que le contrôle ait le focus ou pas.


ShowDropButtonWhen, propriété

Spécifie à quel moment afficher le bouton de la liste déroulante pour un contrôle ComboBox ou TextBox.

Syntaxe

object.ShowDropButtonWhen [= fmShowDropButtonWhen]

La syntaxe de la propriété ShowDropButtonWhen comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmShowDropButtonWhen	Facultatif. Circonstances dans lesquelles le bouton de la liste déroulante est visible.
Valeurs

Les valeurs de fmShowDropButtonWhen sont les suivantes :

Constante	Valeur	Description
fmShowDropButtonWhenNever	0	N'affiche pas le bouton de la liste déroulante, quelle que soit la circonstance.
fmShowDropButtonWhenFocus	1	Affiche le bouton de la liste déroulante lorsque le contrôle a le focus.
fmShowDropButtonWhenAlways	2	Affiche toujours le bouton de la liste déroulante.
Pour un contrôle ComboBox, la valeur par défaut est fmShowDropButtonWhenAlways ; pour un contrôle TextBox, la valeur par défaut est fmShowDropButtonWhenNever.


SmallChange, propriété

Spécifie le déplacement se produisant lorsque l'utilisateur clique sur une flèche de défilement dans un contrôle ScrollBar ou SpinButton.

Syntaxe

object.SmallChange [= Long]

La syntaxe de la propriété SmallChange comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Nombre entier spécifiant le changement de la propriété Value.
Remarques

La propriété SmallChange n'a pas d'unités.

Cette propriété accepte comme valeur tout nombre entier. La plage des valeurs recommandée est comprise entre -32.767 et +32.767. La valeur par défaut est 1.


SpecialEffect, propriété

Spécifie l'aspect à l'écran d'un objet.

Syntaxe

Pour des contrôles case à cocher (CheckBox), bouton d'option ( OptionButton), bouton à bascule (ToggleButton)
object.SpecialEffect [= fmButtonEffect]

Pour d'autres contrôles
object.SpecialEffect [= fmSpecialEffect]

La syntaxe de la propriété SpecialEffect comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmButtonEffect	Facultatif. Aspect à l'écran souhaité pour un contrôle CheckBox, OptionButton ou ToggleButton.
fmSpecialEffect	Facultatif. Aspect à l'écran souhaité d'un objet autre qu'un contrôle CheckBox, OptionButton, ou ToggleButton.
Valeurs

Les valeurs de fmSpecialEffect sont les suivantes :

Constante	Valeur	Description
fmSpecialEffectFlat	0	Objet sans relief, se distinguant de la feuille environnante par une bordure, une autre couleur ou les deux. Valeur par défaut pour les contrôles Image et Label, valide pour tous les contrôles.
fmSpecialEffectRaised	1	Objet en surbrillance en haut et à gauche, et ombré en bas et à droite. Non applicable aux cases à cocher et aux boutons d'option.
fmSpecialEffectSunken	2	Objet ombré en haut et à gauche, et en surbrillance en bas et à droite. Le contrôle et ses bordures apparaissent gravés dans la feuille qui les contient. Valeur par défaut pour les contrôles CheckBox et OptionButton, valide pour tous les contrôles (par défaut).
fmSpecialEffectEtched	3	La bordure apparaît gravée autour du bord du contrôle. Non applicable aux cases à cocher et aux boutons d'option.
fmSpecialEffectBump	6	L'objet a une arrête en bas et à droite et apparaît sans relief en haut et à gauche. Non applicable aux cases à cocher et aux boutons d'option.
Pour un contrôle Frame, la valeur par défaut est Sunken.

Notez que seuls Flat et Sunken (0 et 2) sont des valeurs acceptables pour les contrôles CheckBox, OptionButton et ToggleButton. Toutes les valeurs énumérées sont acceptables pour d'autres contrôles.

Remarques

Vous pouvez utiliser les propriétés SpecialEffect ou BorderStyle pour spécifier la bordure d'un contrôle, mais pas les deux. Si vous spécifiez une valeur non nulle, pour l'une de ces propriétés, le système affecte à l'autre propriété la valeur zéro. Par exemple, si vous affectez la propriété SpecialEffect la valeur fmSpecialEffectRaised, le système positionne BorderStyle sur zéro (fmBorderStyleNone).

Pour un contrôle Frame, la propriété BorderStyle est ignoré si la valeur de la propriété SpecialEffect est fmSpecialEffectFlat.

La valeur de la propriété SpecialEffect utilise les couleurs système pour l’affichage de ses bordures.

Note   Bien que la propriété SpecialEffect existe pour le contrôle ToggleButton, elle est désactivée. Vous ne pouvez définir ou renvoyer une valeur pour cette propriété pour un contrôle ToggleButton.


Style, propriété

Pour un contrôle ComboBox, spécifie de quelle façon l'utilisateur va utiliser le contrôle. Pour les contrôles MultiPage et TabStrip, identifie le style des onglets.

Syntaxe

Pour un contrôle zone de liste modifiable (ComboBox)
object.Style [= fmStyle]

Pour les contrôles multi page (Multipage) et barre d'onglets (TabStrip)
object.Style [= fmTabStyle]

La syntaxe de la propriété Style comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmStyle	Facultatif. Spécifie comment un utilisateur va utiliser un contrôle ComboBox.
fmTabStyle	Facultatif. Spécifie le style des tabulations dans un contrôle  MultiPage ou TabStrip.
Valeurs

Les valeurs de fmStyle sont les suivantes :

Constante	Valeur	Description
fmStyleDropDownCombo	0	Le contrôle ComboBox se comporte comme une liste modifiable déroulante. L'utilisateur peut saisir une valeur dans la zone d'édition ou en sélectionner une dans la liste déroulante (par défaut).
fmStyleDropDownList	2	Le contrôle ComboBox se comporte comme une zone de liste. L'utilisateur doit choisir une valeur dans la liste.
Les valeurs de fmTabStyle sont les suivantes :

Constante	Valeur	Description
fmTabStyleTabs	0	Affiche des onglets dans la barre d’onglets (par défaut).
fmTabStyleButtons	1	Affiche des onglets de style bouton dans la barre d’onglets.
fmTabStyleNone	2	N'affiche pas la barre d’onglets.


TabFixedHeight, TabFixedWidth, propriétés

Définit ou renvoie la hauteur ou largeur fixe des onglets en points.

Syntaxe

object.TabFixedHeight [= Single]

object.TabFixedWidth [= Single]

La syntaxe des propriétés TabFixedHeight et TabFixedWidth comprend les éléments suivants :

Élément	Description
object	Objet valide.
Single	Facultatif. Nombre de points de la hauteur ou largeur des onglets d'un contrôle TabStrip ou MultiPage.
Valeurs

Si la valeur est 0, la largeur des onglets est automatiquement ajustées pour que chaque onglet soit suffisamment large pour accueillir son contenu et que chaque ligne d’onglet occupe la largeur du contrôle.

Si la valeur est supérieure à zéro, tous les onglets ont une largeur identique spécifiée par cette propriété.

Remarques

La taille minimale est de 4 points.


TabIndex, propriété

Spécifie la position d'un objet dans l'ordre des tabulations d'une feuille.

Syntaxe

object.TabIndex [= Integer]

La syntaxe de la propriété TabIndex comprend les éléments suivants :

Élément	Description
object	Objet valide.
Integer	Facultatif. Nombre entier compris entre 0 et le nombre de contrôles moins un de la feuille ayant la propriété TabIndex. une valeur de la propriété TabIndex inférieure à 0 génère une erreur. Pour une valeur de la propriété TabIndex supérieure à la plus grande valeur d'index, le système redéfinit cette valeur sur la valeur maximale autorisée.
Remarques

La valeur d'index du premier objet dans l'ordre des tabulations est zéro.


TabKeyBehavior, propriété

Détermine si les tabulations sont autorisées dans la zone d'édition.

Syntaxe

object.TabKeyBehavior [= Boolean]

La syntaxe de la propriété TabKeyBehavior comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Effet d'une pression sur la touche TAB.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Une pression sur la touche TAB insère un caractère de tabulation dans la zone d'édition.
False	Une pression sur la touche TAB déplace le focus vers l'objet suivant dans l'ordre des tabulations (par défaut).
Remarques

Les propriétés TabKeyBehavior et MultiLine sont très proches. Les valeurs décrites précédemment ne s'appliquent que si la valeur de la propriété MultiLine est True. Si la valeur de la propriété MultiLine est False, une pression sur TAB déplace toujours le focus vers le contrôle suivant dans l'ordre des tabulations quelle que soit la valeur de TabKeyBehavior.

L'effet d'une pression sur les touches CTRL+TAB dépend aussi de la valeur de la propriété MultiLine. Si la valeur de la propriété MultiLine est True, une pression sur CTRL+TAB créé une nouvelle ligne, quelle que soit la valeur la propriété TabKeyBehavior. Pour la valeur False, une pression sur les touches CTRL+TAB est sans effet.


TabOrientation, propriété

Spécifie l'emplacement des onglets d'un contrôle MultiPage ou TabStrip.

Syntaxe

object.TabOrientation [= fmTabOrientation]

La syntaxe de la propriété TabOrientation comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmTabOrientation	Facultatif. Emplacement auquel les onglets apparaissent.
Valeurs

Les valeurs de fmTabOrientation sont les suivantes :

Constante	Valeur	Description
fmTabOrientationTop	0	Les tabulations apparaissent en haut du contrôle (par défaut).
fmTabOrientationBottom	1	Les tabulations apparaissent en bas du contrôle.
fmTabOrientationLeft	2	Les tabulations apparaissent à gauche du contrôle.
fmTabOrientationRight	3	Les tabulations apparaissent en droite du contrôle.
Remarques

Si vous utilisez des polices TrueType, le texte effectue une rotation lorsque la valeur de la propriété TabOrientation est fmTabOrientationLeft ou fmTabOrientationRight. Si vous utilisez des polices bitmap, le texte n'effectue pas de rotation.


TabStop, propriété

Indique si un objet peut recevoir le focus quand l'utilisateur utilise la touche TAB pour se déplacer.

Syntaxe

object.TabStop [= Boolean]

La syntaxe de la propriété TabStop comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si l'objet est un arrêt de tabulation.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Désigne l'objet en tant qu'arrêt de tabulation (par défaut).
False	Ignore l'objet lorsque l'utilisateur effectue une tabulation, bien que l'objet ait toujours sa place dans l'ordre des tabulations réel, tel qu'il est déterminé par la propriété TabIndex.


Tag, propriété

Stocke des informations supplémentaires sur un objet.

Syntaxe

object.Tag [= String]

La syntaxe de la propriété Tag comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Expression de chaîne identifiant l'objet. La valeur par défaut est une chaîne de longueur zéro ("").
Remarques

Utilisez la propriété Tag pour affecter une chaîne d'identification à un objet sans affecter d'autres valeurs ou attributs de la propriété.

Par exemple, vous pouvez utiliser Tag pour vérifier l'identité d'une feuille ou d'un contrôle transmis à une procédure en tant que variable.


Text, propriété

Renvoie ou définit le texte d'un contrôle TextBox. Change la ligne sélectionnée d'un contrôle ComboBox ou ListBox.

Syntaxe

object.Text [= String]

La syntaxe de la propriété Text comprend les éléments suivants :

Élément	Description
object	Objet valide.
String	Facultatif. Expression de chaîne spécifiant du texte. La valeur par défaut est une chaîne de longueur zéro (““).
Remarques

Pour un contrôle TextBox, la valeur que vous attribuez à la propriété Text s’applique également à la propriété Value.

Pour un contrôle ComboBox, la propriété Text vous permet de mettre à jour la valeur du contrôle. Si la valeur de la propriété Text correspond à une entrée existant dans la liste, la valeur de la propriété ListIndex (index de la ligne courante) se règle sur la ligne qui correspond à la propriété Text. Si la valeur de la propriété Text ne correspond à aucune ligne, ListIndex prend la valeur –1.

Pour un contrôle ListBox, la valeur de la propriété Text doit correspondre à une entrée existant dans la liste, sans quoi une erreur sera générée.

Vous ne pouvez utiliser la propriété Text pour changer la valeur d’une entrée d’un contrôle ComboBox ou ListBox. Pour cela, utilisez les propriétés Column ou List.

La propriété ForeColor détermine la couleur du texte.


TextAlign, propriété

Spécifie la façon dont un texte est aligné dans un contrôle.

Syntaxe

object.TextAlign [= fmTextAlign]

La syntaxe de la propriété TextAlign comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmTextAlign	Facultatif. Spécifie la façon dont le texte est aligné dans le contrôle.
Valeurs

Les valeurs de fmTextAlign sont les suivantes :

Constante	Valeur	Description
fmTextAlignLeft	1	Aligne le premier caractère du texte affiché avec le bord gauche de l'affichage ou de la zone d'édition du contrôle (par défaut).
fmTextAlignCenter	2	Centre le texte dans l'affichage dans la zone d'édition du contrôle.
fmTextAlignRight	3	Aligne le dernier caractère du texte affiché avec le bord droit de l'affichage ou de la zone d'édition du contrôle.
Remarques

Pour un contrôle ComboBox, la propriété TextAlign n'affecte que la zone d'édition ; cette propriété est sans effet sur l'alignement du texte de la liste. Pour des étiquettes indépendantes, TextAlign détermine l'alignement de la légende de l'étiquette.


TextColumn, propriété

Identifie la colonne d'un contrôle ComboBox ou ListBox pour l'afficher à l'attention de l'utilisateur.

Syntaxe

object.TextColumn [= Variant]

La syntaxe de la propriété TextColumn comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. Colonne à afficher.
Valeurs

Les valeurs de la propriété TextColumn sont comprises entre –1 et le nombre de colonnes de la liste. La valeur de la propriété TextColumn pour la première colonne est 1, la valeur de la deuxième colonne est 2, et ainsi de suite. La définition de la propriété TextColumn sur 0 affiche les valeurs de la propriété ListIndex. La définition de la propriété TextColumn sur –1 affiche la première colonne ayant une valeur la propriété ColumnWidths supérieure à 0.

Remarques

Lorsque l'utilisateur sélectionne une ligne dans un contrôle ComboBox ou ListBox, la colonne référencée par la propriété TextColumn est stockée dans la propriété Text. Par exemple, vous pouvez créer un contrôle ListBox multicolonne contenant dans une colonne le nom des jours fériés, et dans une autre leur date. Pour présenter le nom des jours fériés à l’utilisateur, définissez la première colonne comme TextColumn. Pour stocker les dates, définissez la seconde colonne comme BoundColumn.

Lorsque la propriété Text d'un contrôle ComboBox change (comme lorsque l'utilisateur tape une entrée dans le contrôle), le nouveau texte est comparé à la colonne de données spécifiée par la propriété TextColumn.


TextLength, propriété

Renvoie la longueur, en caractères, du texte de la zone d'édition d'un contrôle TextBox ou ComboBox.

Syntaxe

object.TextLength

La syntaxe de la propriété TextLength comprend les éléments suivants :

Élément	Description
object	Objet valide.
Remarques

La propriété TextLength est en lecture seule. Pour un contrôle TextBox à plusieurs lignes, la propriété TextLength tient compte des caractères LF (saut de ligne) et CR (retour à la ligne).


TopIndex, propriété

Définit et renvoie l'élément apparaissant tout en haut de la liste.

Syntaxe

object.TopIndex [= Variant]

La syntaxe de la propriété TopIndex comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. Numéro de l'élément de la liste affiché tout en haut de celle-ci. La valeur par défaut est zéro, elle correspond au premier élément de la liste.
Valeurs

Renvoie la valeur –1 si la liste est vide ou non affichée.


TransitionEffect, propriété

Spécifie l'effet visuel à utiliser lors du passage d'une page à une autre.

Syntaxe

object.TransitionEffect [= fmTransitionEffect]

La syntaxe de la propriété TransitionEffect comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmTransitionEffect	Facultatif. Effet de transition entre les pages.
Valeurs

Les valeurs de fmTransitionEffect sont les suivantes :

Constante	Valeur	Description
fmTransitionEffectNone	0	Pas d'effet spécial (par défaut).
fmTransitionEffectCoverUp	1	La nouvelle page couvre l'ancienne, en se déplaçant du bas vers le haut.
fmTransitionEffectCoverRightUp	2	La nouvelle page couvre l'ancienne, en se déplaçant du coin inférieur gauche vers le coin supérieur droit.
fmTransitionEffectCoverRight	3	La nouvelle page couvre l'ancienne, en se déplaçant du bord gauche bers le bord droit.
fmTransitionEffectCoverRightDown	4	La nouvelle page couvre l'ancienne, en se déplaçant du coin supérieur gauche vers le coin inférieur droit.
fmTransitionEffectCoverDown	5	La nouvelle page couvre l'ancienne, en se déplaçant du haut vers le bas.
fmTransitionEffectCoverLeftDown	6	La nouvelle page couvre l'ancienne, en se déplaçant du coin supérieur droit vers le coin inférieur gauche.
fmTransitionEffectCoverLeft	7	La nouvelle page couvre l'ancienne, en se déplaçant de droite à gauche.
fmTransitionEffectCoverLeftUp	8	La nouvelle page couvre l'ancienne, en se déplaçant du coin inférieur droit vers le coin supérieur gauche.
fmTransitionEffectPushUp	9	La nouvelle page pousse l'ancienne hors de l'écran, en se déplaçant du bas vers le haut.
fmTransitionEffectPushRight	10	La nouvelle page pousse l'ancienne hors de l'écran, en se déplaçant de la gauche vers la droite.
fmTransitionEffectPushDown	11	La nouvelle page pousse l'ancienne hors de l'écran, en se déplaçant du haut vers le bas.
fmTransitionEffectPushLeft	12	La nouvelle page pousse l'ancienne hors de l'écran, en se déplaçant de la droite vers la gauche.
Remarques

Utilisez la propriété TransitionPeriod pour spécifier la durée d'un effet de transition.


TransitionPeriod, propriété

Spécifie la durée, en millisecondes, d'un effet de transition.

Syntaxe

object.TransitionPeriod [= Long]

La syntaxe de la propriété TransitionPeriod comprend les éléments suivants :

Élément	Description
object	Objet valide.
Long	Facultatif. Durée de la transition d'une page à une autre.
Remarques

Tout nombre entier compris entre zéro et 10.000 est une valeur autorisée pour cette propriété. Si la valeur de la propriété TransitionPeriod est zéro, l'effet de transition est désactivé ; la valeur 10.000 créé une transition de 10 secondes.


TripleState, propriété

Détermine si un utilisateur peut spécifier, depuis l'interface utilisateur, l'état Null pour un contrôle CheckBox ou ToggleButton.

Syntaxe

object.TripleState [= Boolean]

La syntaxe de la propriété TripleState comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si le contrôle gère l'état Null.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	L’utilisateur peut obtenir les trois états.
False	L’utilisateur ne peut obtenir que les états True et False (par défaut).
Remarques

Bien que la propriété TripleState existe pour un contrôle OptionButton, elle est désactivée. Quelle que soit la valeur de TripleState, vous ne pouvez régler le contrôle sur Null par l’interface utilisateur.

Lorsque la valeur de la propriété TripleState est True, un utilisateur peut choisir entre les valeurs Null, True et False. La valeur Null est affichée sous forme d'un bouton ombré.

Lorsque la valeur de la propriété TripleState est False, l'utilisateur ne peut choisir que les valeurs True ou False.

Un contrôle réglé sur Null ne génère par un événement Click.

Quelle que soit la valeur de la propriété, la valeur Null peut toujours être affectée par programmation aux contrôles CheckBox ou ToggleButton pour qu’ils apparaissent ombrés.


Value, propriété

Spécifie l'état ou le contenu d'un contrôle donné.

Syntaxe

object.Value [= Variant]

La syntaxe de la propriété Value comprend les éléments suivants :

Élément	Description
object	Objet valide.
Variant	Facultatif. État ou contenu du contrôle.
Valeurs

Contrôle	Description
CheckBox	Valeur entière indiquant si l'élément est coché.
	Null   Indique que l'élément est à l'état Null, ni coché, ni décoché.
	–1   True. Indique que l'élément est coché.
	0   False. Indique que l'élément est décoché.
OptionButton	Même que pour un contrôle CheckBox.
ToggleButton	Même que pour un contrôle CheckBox.
ScrollBar	Nombre entier entre les valeurs spécifiées pour les propriétés Max et Min.
SpinButton	Même que pour un contrôle ScrollBar.
ComboBox, ListBox	Valeur du BoundColumn des lignes actuellement sélectionnées.
CommandButton	Toujours False.
MultiPage	Nombre entier indiquant la page actuellement active.
	Zéro (0) indique la première page. La valeur maximale est égale au nombre de pages moins un.
TextBox	Texte dans la zone d'édition.
Remarques

Pour un contrôle CommandButton, si vous affectez la valeur True à la propriété Value dans une macro ou procédure, l'événement Click du bouton est déclenché.

Pour un contrôle ComboBox, le changement du contenu de la propriété Value ne modifie pas la valeur de la propriété BoundColumn. Pour ajouter ou supprimer des entrées d'un contrôle ComboBox, vous pouvez utiliser la méthode AddItem ou RemoveItem.

La propriété Value ne peut pas être utilisé dans une zone de liste à plusieurs sélections.


VerticalScrollbarSide, propriété

Spécifie si une barre de défilement vertical apparaît à droite ou à gauche d'une feuille ou page.

Syntaxe

object.VerticalScrollbarSide [= fmVerticalScrollbarSide]

La syntaxe de la propriété VerticalScrollbarSide comprend les éléments suivants :

Élément	Description
object	Objet valide.
fmVerticalScrollbarSide	Facultatif. Emplacement où doit apparaître la barre de défilement.
Valeurs

Les valeurs de fmVerticalScrollbarSide sont les suivantes :

Constante	Valeur	Description
fmVerticalScrollbarSideRight	0	Place la barre de défilement sur le coté droit (par défaut).
fmVerticalScrollBarSideLeft	1	Place la barre de défilement sur le coté gauche.
Remarques

La propriété VerticalScrollBarSide est très utile lorsqu'une feuille est utilisée dans un environnement où la lecture s'effectue de la droite vers la gauche.


Visible, propriété

Spécifie si un objet est masqué ou affiché.

Syntaxe

object.Visible [= Boolean]

La syntaxe de la propriété Visible comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Spécifie si l'objet est masqué ou affiché.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	L'objet est visible (par défaut).
False	L'objet est masqué.
Remarques

Utilisez la propriété Visible pour commander l'accès aux informations sans les afficher. Par exemple, vous pouvez utiliser la valeur d'un contrôle sur une feuille masquée comme le critère d'une requête.

Tous les contrôles sont visibles au moment de la conception.


WordWrap, propriété

Indique si un retour à la ligne s'ajoute automatiquement au contenu d'un contrôle à la fin d'une ligne.

Syntaxe

object.WordWrap [= Boolean]

La syntaxe de la propriété WordWrap comprend les éléments suivants :

Élément	Description
object	Objet valide.
Boolean	Facultatif. Indique si le contrôle s'étend pour s'ajuster au texte.
Valeurs

Les valeurs de Boolean sont les suivantes :

Valeur	Description
True	Le texte a un retour à la ligne (par défaut).
False	Le texte n'a pas de retour à la ligne.
Remarques

Pour les contrôles gérant la propriété MultiLine ainsi que la propriété WordWrap, WordWrap est ignoré lorsque la valeur de la propriété MultiLine est False.


Zoom, propriété

Spécifie le changement de la taille d'un objet affiché.

Syntaxe

object.Zoom [= Integer]

La syntaxe de la propriété Zoom comprend les éléments suivants :

Élément	Description
object	Objet valide.
Integer	Facultatif. Pourcentage de l'augmentation ou de la diminution de l'image affichée.
Remarques

La valeur de la propriété Zoom spécifie un pourcentage d'agrandissement ou de réduction d'une image devant modifier l'affichage d'une image. Les valeurs entre 10 et 400 sont valides. La valeur spécifiée est un pourcentage de la taille originale de l'objet ; ainsi, une valeur de 400 signifie que vous voulez quadrupler la taille originale de l'image (400 %), alors qu'une valeur de10 signifie que vous voulez réduire l'image à un dixième de sa taille originale (10 %).


Touche d'accès rapide
Touche d’accès rapide

Caractère unique utilisé comme raccourci pour sélectionner un objet. Si vous appuyez sur la touche ALT et sur une touche d’accès rapide, vous placez le focus sur un objet et déclenchez un ou plusieurs événements associés à cet objet. Le ou les événements lancés varient d’un objet à l’autre. Si le code est associé à un objet, il est traité lors du déclenchement de l’événement. Cette touche est également appelée "touche de raccourci" ou "raccourci clavier".


Couleur d'arrière-plan
Couleur d’arrière-plan

Couleur de la zone client d’une fenêtre ou d’un écran vide, où s’affichent tous les dessins et les couleurs.


Dépendant

Décrit un contrôle dont le contenu est associé à une source de données particulière, telle qu’une cellule ou une plage de cellules d’une feuille de calcul.


Identificateur de classe (CLSID)

Identificateur unique (UUID) qui permet d’identifier un objet. Un objet inscrit son CLSID dans la base de données du registre système afin qu’il puisse être chargé et programmé par d’autres applications.


Effacer

Permet de désactiver une valeur ou de la supprimer.


Zone client

Partie d’une fenêtre où une application affiche un résultat, par exemple du texte ou des graphiques.


Identificateur de contexte

Nombre ou chaîne de caractères unique correspondant à un objet particulier d’une application. Les identificateurs de contexte permettent de créer des liens entre l’application et les rubriques d’aide appropriées.


Groupe de contrôles

Jeu de contrôles associés de façon conceptuelle ou logique. Les contrôles ayant une relation conceptuelle peuvent, en général, s’afficher ensemble mais ils ne s’influencent pas les uns les autres, contrairement à ceux ayant une relation logique. Par exemple, si vous placez un bouton dans un groupe de boutons d’option, tous les autres boutons du groupe prennent la valeur False.


Info-bulle de contrôle

Phrase courte décrivant un contrôle, un objet Page ou Tab. L’info-bulle s’affiche lorsque l’utilisateur place momentanément le pointeur sur un contrôle sans cliquer dessus. Une info-bulle de contrôle est semblable aux autres info-bulles. Microsoft Forms propose des info-bulles aux développeurs en mode création, tandis que les développeurs proposent des info-bulles de contrôle à l’utilisateur en mode exécution.


Curseur

Élément du programme qui permet de renvoyer des lignes de données à une application. Le curseur indique aussi la position en cours dans un jeu de résultats.


Cycle

Permet de se déplacer dans un groupe d’objets selon un ordre donné.


Format de données

Structure ou aspect d’une unité de données, telle qu’un fichier, un enregistrement de base de données, une cellule de feuille de calcul ou du texte d’un document de traitement de texte.


Source de données

Emplacement des données auquel est lié un contrôle, par exemple une cellule d’une feuille de calcul. La valeur en cours d’une source de données peut être enregistrée dans la propriété Value d’un contrôle. Toutefois, le contrôle n’enregistre pas les données, il n’affiche que les informations enregistrées dans la source de données.


Contrôle principal

Se rapporte aux commandes Aligner et Rendre dimensions identiques du menu Format. Lors de l'alignement, les contrôles sélectionnés s’alignent sur le contrôle principal. Lorsque vous redimensionnez des contrôles, les contrôles sélectionnés prennent les dimensions du contrôle principal.

Le contrôle principal est identifié par des poignées de redimensionnement blanches, alors que celles des contrôles sélectionnés sont noires.


Source à déplacer

Texte ou objet sélectionné que vous déplacez au cours d’une opération glisser-déplacer.


Constante énumérée

Des informations supplémentaires sur une donnée énumérée se trouvent dans la description de la propriété, de la méthode ou de l'événement utilisant l'énumération.


Couleur de premier plan

Couleur sélectionnée pour afficher des dessins ou du texte à l’écran. La couleur de premier plan d’un écran monochrome est celle d’une image bitmap ou d’un graphique.


Bloc de grille

Espace situé entre deux points adjacents d’une grille.


IME (Input Method Editor)

Application qui convertit les caractères d’un langage DBCS à mesure que vous les saisissez, par exemple des caractères japonais ou chinois. Pendant l’opération de saisie, l’IME affiche les équivalences possibles et l’utilisateur sélectionne l’entrée la plus appropriée.


Propriété héritée

Propriété ayant acquis les caractéristiques d’une autre classe.


État du clavier

Valeur renvoyée qui permet d’identifier les touches actionnées et de savoir si les modificateurs du clavier, MAJ, CTRL et ALT, sont activés.


Contrôle Conteneur OLE

Contrôle Visual Basic qui permet de lier et d’incorporer des objets d’autres applications dans une application Visual Basic.


Code d'état OLE
Code d’état OLE

Partie du numéro d’erreur d’une structure de données qui renvoie des informations sur les conditions d’erreur. La structure de données est définie par la liaison et l’incorporation d’objets (OLE).


Espace réservé

Caractère qui affiche ou masque un autre caractère pour des raisons de sécurité. Par exemple, lorsque l’utilisateur tape un mot de passe, un astérisque s’affiche à l’écran à la place de chaque caractère tapé.


Page de propriétés

Groupe de propriétés présenté dans une page d'onglet d’une feuille de propriétés.


Couleurs RGB

Système de valeurs de couleurs permettant de décrire les couleurs selon la combinaison rouge (R), vert (G) et bleu (B). La couleur est définie par un jeu de trois nombres entiers (R, G, B) où chacun d’eux est compris entre 0 et 255. La valeur 0 indique qu’il n’existe aucun composant de couleur, et la valeur 255 indique l’intensité la plus élevée d’un composant de couleur.


Couleurs système

Couleurs définies par le système d’exploitation pour un type d’écran et une carte vidéo spécifiques. Chaque couleur est associée à un élément particulier de l’interface utilisateur, tel qu’un titre de fenêtre ou un menu.


Cible

Objet vers lequel l’utilisateur fait glisser l’objet à déplacer.


Transparent

Décrit l’arrière-plan d’un objet, lorsque l’arrière-plan n’est pas visible. À la place de ce dernier, vous voyez tout ce qui se trouve derrière l’objet, par exemple, un dessin ou une image servant de toile de fond à votre application. Utilisez la propriété BackStyle pour rendre l’arrière-plan transparent.


Non dépendant

Décrit un contrôle qui n’est pas associé à une cellule de feuille de calcul. Par opposition, un contrôle dépendant est une source de données d’une cellule de feuille de calcul qui permet d’afficher et de modifier la valeur d’un contrôle.


Qu'est-ce qu'un contrôle MultiPage ?
Qu’est-ce qu’un contrôle MultiPage ?

Un contrôle MultiPage est un contrôle contenant une collection d’une ou de plusieurs pages.

Chaque objet Page d’un contrôle MultiPage est une feuille contenant ses propres contrôles et qui, en tant que tel, peut avoir une présentation qui lui est propre. En général, les pages d’un contrôle MultiPage comportent des onglets qui permettent à l’utilisateur de sélectionner les pages individuellement.

Par défaut, un contrôle MultiPage comprend deux pages, intitulées Page1 et Page2. Chacune d’elles est un objet Page. Ensemble, elles représentent la collection Pages du contrôle MultiPage. Si vous ajoutez d’autres pages, elles deviennent partie intégrante de la même collection Pages.


Qu'est-ce qu'un contrôle TabStrip ?
Qu’est-ce qu’un contrôle TabStrip ?

Un contrôle TabStrip est un contrôle contenant une collection d’un ou de plusieurs onglets.

Chaque objet Tab d’un contrôle TabStrip est un objet distinct sélectionnable par l’utilisateur. Sur le plan visuel, un contrôle TabStrip comprend également une zone client partagée par tous les onglets du contrôle TabStrip.

Par défaut, un contrôle TabStrip comprend deux onglets, intitulés Tab1 et Tab2. Chacun d’eux est un objet Tab. Ensemble, ils représentent la collection Tabs du contrôle TabStrip. Si vous ajoutez d’autres onglets, ils deviennent partie intégrante de la même collection Tabs.


Quel contrôle utiliser : un contrôle MultiPage ou un contrôle TabStrip ?

Si vous utilisez une présentation identique pour les données, utilisez un contrôle TabStrip et mappez chaque ensemble de données dans son propre onglet (Tab). En revanche, si vous utilisez des présentations de données différentes, utilisez un contrôle MultiPage et affectez chaque présentation à sa propre Page.

Contrairement à un objet Page d’un contrôle MultiPage, la zone client d’un contrôle TabStrip ne constitue pas une feuille distincte, mais une partie de la feuille qui contient le contrôle TabStrip. La bordure d’un contrôle TabStrip définit une zone de la feuille que vous pouvez associer aux onglets. Quand vous placez un contrôle dans la zone client d’un contrôle TabStrip, vous ajoutez un contrôle à la feuille contenant le contrôle TabStrip.


Conseils d'utilisation des zones de texte (TextBox)
Conseils d’utilisation des zones de texte (TextBox)

Le contrôle TextBox est un contrôle souple, régi par les propriétés suivantes : Text, MultiLine, WordWrap et AutoSize.

La propriété Text contient le texte qui s’affiche dans la zone de texte.

La propriété MultiLine contrôle l’affichage sur une ou plusieurs lignes du texte du contrôle TextBox. Des caractères de nouvelle ligne indiquent la fin d’une ligne et le début d’une autre. Si la valeur de la propriété MultiLine est False, le texte est tronqué au lieu de revenir à la ligne.

La propriété WordWrap permet le retour automatique des lignes de texte trop longues en les ajustant à la taille de la largeur du contrôle TextBox.

Si vous n’utilisez pas la propriété WordWrap, le contrôle TextBox commence une nouvelle ligne dès qu’il rencontre un caractère de nouvelle ligne dans le texte. Si la propriété WordWrap est désactivée, certaines lignes de texte risquent de ne pas correspondre exactement à la largeur du TextBox qui affiche alors les parties de texte correspondant à sa largeur et tronque les parties de taille supérieure. La propriété WordWrap n’est applicable que si la valeur de la propriété MultiLine est True.

La propriété AutoSize contrôle l’ajustement du contrôle TextBox pour afficher l’intégralité du texte. Si vous utilisez la propriété AutoSize avec un contrôle TextBox, la largeur de ce dernier diminue ou augmente en fonction de la taille du texte qu’il contient et de la taille de la police utilisée pour afficher le texte.

La propriété AutoSize est très utile dans les situations suivantes :

•	Affichage d’une légende contenant une ou plusieurs lignes.

•	Affichage du contenu d’un contrôle TextBox d’une seule ligne.

•	Affichage du contenu d’un contrôle TextBox de plusieurs lignes, en lecture seule pour l’utilisateur.

Note   Évitez d’employer la propriété AutoSize avec un contrôle TextBox vide qui utilise aussi les propriétés MultiLine et WordWrap. Quand l’utilisateur saisit le texte dans un TextBox comportant ces propriétés, le TextBox se redimensionne automatiquement en une longue zone étroite d’une largeur d’un caractère et de la longueur d’une ligne de texte.


Création d'une zone de liste standard (ListBox)
Création d’une zone de liste standard (ListBox)

1	Dans la fenêtre Propriétés, sélectionnez la propriété ListStyle.

2	Cliquez sur la flèche de défilement vers le bas pour afficher la liste des styles disponibles.

3	Dans la liste, sélectionnez Plain.


Création d'une zone de liste avec des boutons d'option ou des cases à cocher
Création d’une zone de liste avec des boutons d’option ou des cases à cocher

1	Dans la fenêtre Propriétés, sélectionnez la propriété ListStyle.

2	Cliquez sur la flèche de défilement vers le bas pour afficher la liste des styles disponibles.

3	Dans la liste, sélectionnez Option.

Si la valeur de la propriété ListStyle est Option, la propriété MultiSelect détermine si les cases à cocher ou les boutons d’option apparaissent dans la liste. Si la valeur de la propriété MultiSelect est Single, les boutons d’option apparaissent dans la liste. Si MultiSelect est définie sur Multi ou sur Extended, ce sont les cases à cocher qui apparaissent dans la liste.


Styles du contrôle ListBox

Vous pouvez choisir entre deux styles de présentation applicables à un contrôle ListBox. Chaque style propose à l’utilisateur différents modes de sélection des éléments contenus dans la liste.

Si le style est Plain, chaque élément se trouve sur une ligne séparée ; l’utilisateur sélectionne un élément en mettant en évidence une ou plusieurs lignes.

Si le style est Option, un bouton d’option ou une case à cocher s’affiche au début de chaque ligne. Avec ce style, l’utilisateur sélectionne un élément en cliquant sur le bouton d’option ou sur la case à cocher. Les cases à cocher n’apparaissent que lorsque la valeur de la propriété MultiSelect est True.


Quelle est la différence entre l'objet DataObject et le Presse-papiers ?
Quelle est la différence entre l’objet DataObject et le Presse-papiers ?

L’objet DataObject et le Presse-papiers permettent tous deux de déplacer des données d’un endroit à un autre. En tant que développeur d’applications, vous devez garder à l’esprit plusieurs points importants lorsque vous utilisez un objet DataObject ou le Presse-papiers :

•	Vous pouvez enregistrer simultanément plusieurs données dans un objet DataObject ou dans le Presse-papiers sous réserve que chaque donnée ait un format de données différent. Si vous enregistrez des données dans un format déjà utilisé, les nouvelles données sont enregistrées et les données précédentes sont supprimées.

•	Le Presse-papiers supporte les formats d’image et les formats texte. Actuellement, un objet DataObject ne supporte que les formats texte.

•	Un objet DataObject n’existe que pendant l’exécution de votre application ; le Presse-papiers existe tant que le système d’exploitation tourne. Autrement dit, vous pouvez placer des données dans le Presse-papiers et fermer l’application sans perdre ces dernières. Il n’en va pas de même avec l’objet DataObject. Si vous fermez l’application qui place les données dans un DataObject, vous perdez celles-ci.

•	Contrairement au Presse-papiers, un DataObject est un objet OLE standard. Autrement dit, le Presse-papiers peut supporter les actions de déplacement standard (copier, couper et coller), mais ne peut gérer les opérations glisser-déplacer. Vous devez utiliser l’objet DataObject si vous voulez que votre application prenne en charge ce type d’opérations.

Conseil   Vous pouvez définir vos propres noms de format de données si vous utilisez la méthode SetText pour déplacer des données dans le Presse-papiers ou dans un objet DataObject. Vous pouvez ainsi faire la distinction entre le texte déplacé par votre application et le texte déplacé par l’utilisateur.


Affichage ou masquage la boîte à outils
Affichage ou masquage de la boîte à outils

Dans le menu Affichage, regardez si une coche s’affiche en regard de Boîte à outils. Si la coche est présente, la boîte à outils s’affiche, dans le cas contraire, elle est masquée.

Choisissez l’une des options suivantes :

•	Pour afficher la boîte à outils, vérifiez que la coche apparaît en regard de Boîte à outils. Si ce n’est pas le cas, sélectionnez Boîte à outils.

•	Pour masquer la boîte à outils, vérifiez qu’aucune coche n’apparaît en regard de Boîte à outils. Si une coche apparaît, sélectionnez Boîte à outils pour la supprimer.


Qu'est-ce que la boîte à outils ?
Qu’est-ce que la boîte à outils ?

La boîte à outils identifie les différents contrôles que vous pouvez ajouter dans une feuille, un contrôle Frame ou un objet Page.

Vous pouvez personnaliser la boîte à outils de diverses manières et notamment :

•	Ajouter des pages à la boîte à outils.

•	Déplacer des contrôles d’une page à l’autre.

•	Renommer des pages.

•	Ajouter d’autres contrôles, comme des contrôles ActiveX, à la boîte à outils.

•	Copier des contrôles personnalisés à partir d’une feuille dans la boîte à outils.

Par exemple, les boutons OK et Annuler sont des modèles spéciaux de bouton de commande (CommandButton). Si vous ajoutez les modèles OK et Annuler dans la boîte à outils, vous pourrez les insérer rapidement dans d’autres feuilles.


Ajout d'un contrôle personnalisé à la boîte à outils
Ajout d’un contrôle personnalisé à la boîte à outils

1	Placez un contrôle dans votre feuille et personnalisez-le.

Par exemple, pour créer un bouton OK, placez un contrôle CommandButton dans la feuille, affectez la valeur OK à sa propriété Caption et la valeur True à sa propriété Default.

2	Sélectionnez le contrôle personnalisé.

3	Faites-le glisser sur la boîte à outils.

Note   Lorsque vous faites glisser un contrôle sur la boîte à outils, vous ne transférez que les valeurs des propriétés. Les codes que vous avez écrits pour ce contrôle ne sont pas transférés. Vous devez écrire un nouveau code pour l’icône ou bien le copier à partir du contrôle de la feuille dans le contrôle de la boîte à outils.


Ajout d'un contrôle à une feuille
Ajout d’un contrôle à une feuille

Vous pouvez ajouter un contrôle à la boîte à outils de l’une des façons suivantes. Ces méthodes permettent également d’ajouter un contrôle à un contrôle Frame, TabStrip ou MultiPage d’une feuille.

•	Cliquez sur un contrôle de la boîte à outils, puis sur la feuille. Le contrôle s’affiche dans sa taille par défaut. Vous pouvez alors le redimensionner avec la souris.

•	Glissez-déplacez un contrôle de la boîte à outils sur la feuille. Le contrôle s’affiche dans sa taille par défaut.

•	Double-cliquez sur un contrôle de la boîte à outils, puis cliquez sur la feuille une fois pour chaque contrôle que vous voulez créer. Par exemple, pour créer quatre boutons de commande, double-cliquez sur le contrôle CommandButton dans la boîte à outils, puis cliquez quatre fois sur la feuille.


Ajout d'un contrôle à la boîte à outils
Ajout d’un contrôle à la boîte à outils

1	Cliquez avec le bouton droit sur l’icône d’un contrôle dans la boîte à outils ou sur la zone vide d’une page de la boîte à outils.

2	Dans le menu contextuel, sélectionnez Contrôles Additionnels.

3	Dans la liste Contrôles Disponibles, sélectionnez les nouveaux contrôles.

4	Cliquez sur OK.


Suppression d'un élément de la boîte à outils
Suppression d’un élément de la boîte à outils

1	Dans la boîte à outils, cliquez avec le bouton droit sur l’icône de l’élément à supprimer.

2	Dans le menu contextuel, sélectionnez Supprimer. La commande inclura le nom du contrôle sélectionné.

Note   Si vous supprimez des contrôles, vous pouvez utiliser l’option Contrôles Additionnels du menu contextuel et décochez les cases à cocher de tous les contrôles à supprimer.


Personnalisation d'une icône de la boîte à outils
Personnalisation d’une icône de la boîte à outils

1	Cliquez avec le bouton droit sur l’icône dans la boîte à outils.

2	Dans le menu contextuel, sélectionnez Personnaliser.

3	Choisissez l’une des options suivantes :

•	Pour changer l’info-bulle, tapez le nouveau texte.

•	Pour modifier l’icône, sélectionnez Éditer une image. Sélectionnez ensuite la couleur que vous voulez utiliser, puis choisissez le pixel de l’image dans lequel vous souhaitez appliquer cette couleur.

•	Pour affecter une nouvelle image bitmap, sélectionnez Charger une image, puis identifiez le fichier contenant l’image que vous voulez utiliser comme icône. Si vous essayez de charger une image plus grande que l’icône, une erreur se produit.


Qu'est-ce qu'une info-bulle ?
Qu’est-ce qu’une info-bulle ?

Une info-bulle est une courte description, de quelques mots en général, qui apparaît lorsque l’utilisateur place le pointeur de la souris sur un contrôle ou sur tout autre élément de l’interface utilisateur sans cliquer. Vous pouvez personnaliser les info-bulles des contrôles et de la boîte à outils.

La valeur par défaut d’un nouveau contrôle, copié à partir d’une feuille dans la boîte à outils, est "Nouveau", suivi du type de contrôle. Par exemple, l’info-bulle par défaut d’un contrôle bouton de commande (CommandButton) personnalisé (tel que OK) est "Nouveau Bouton de commande". Si aucune info-bulle n’est associée à un contrôle, la valeur par défaut est "Inconnu".

Note   L’info-bulle est une information que fournit Microsoft Forms aux développeurs de feuilles, en mode création. Chaque contrôle possède une propriété, ControlTipText, qui leur permet de créer une "Info-bulle" disponible pour les utilisateurs lorsqu’ils exécutent l’application.


Personnalisation d'une info-bulle dans la boîte à outils
Personnalisation d’une info-bulle dans la boîte à outils

1	Sélectionnez le contrôle dans la boîte à outils.

2	Cliquez avec le bouton droit de la souris.

3	Dans le menu contextuel, sélectionnez Personnaliser. La commande Personnaliser inclura le nom du contrôle, "Personnaliser Label" par exemple.

4	Tapez le nouveau texte de l’info-bulle.

5	Cliquez sur OK.


Définition de l'info-bulle d'une page de la boîte à outils
Définition de l’info-bulle d’une page de la boîte à outils

1	Sélectionnez la page de la boîte à outils.

2	Cliquez avec le bouton droit de la souris.

3	Dans le menu contextuel, sélectionnez Renommer.

4	Tapez le nouveau texte de l’info-bulle.

5	Cliquez sur OK.


Modification du nom d'une page de la boîte à outils
Modification du nom d’une page de la boîte à outils

1	Cliquez avec le bouton droit sur l’onglet de la page de la boîte à outils dont vous voulez modifier le nom.

2	Dans le menu contextuel, sélectionnez Renommer.

3	Dans le champ Légende, tapez le nom à utiliser.

4	Cliquez sur OK.


Modification de l'ordre des pages de la boîte à outils
Modification de l’ordre des pages de la boîte à outils

1	Cliquez avec le bouton droit sur l’onglet d’une page de la boîte à outils.

2	Dans le menu contextuel, sélectionnez Déplacer.

3	Sélectionnez le nom de la page à déplacer.

4	Sélectionnez Vers le haut ou Vers le bas jusqu’à ce que la page soit placée à la position recherchée dans la liste des pages.

5	Cliquez sur OK.


Création d'une nouvelle page de la boîte à outils
Création d’une nouvelle page de la boîte à outils

1	Cliquez avec le bouton droit sur l’onglet d’une page de la boîte à outils. La nouvelle page sera insérée après cette page.

2	Sélectionnez Nouvelle page.


Suppression d'une page de la boîte à outils
Suppression d’une page de la boîte à outils

1	Cliquez avec le bouton droit sur l’onglet de la page à supprimer dans la boîte à outils.

2	Sélectionnez Supprimer page. Tous les contrôles de la page sont supprimés en même temps.


Importation ou exportation d'une page de la boîte à outils
Importation ou exportation d’une page de la boîte à outils

1	Cliquez avec le bouton droit sur l’onglet d’une page de la boîte à outils. Si vous importez une page, elle sera insérée après la page sélectionnée.

2	Choisissez l’une des options suivantes :

•	Pour importer une page, sélectionnez Importer page, puis le nom du fichier page à importer.

•	Pour exporter une page, sélectionnez Exporter page, puis tapez le nom du fichier qui enregistrera une copie de la page de la boîte à outils. Lorsque vous exportez une page, elle n’est pas supprimée de la boîte à outils.

3	Cliquez sur OK.


Déplacement d'un élément vers une autre page de la boîte à outils
Déplacement d’un élément vers une autre page de la boîte à outils

1	Sélectionnez un contrôle dans une page de la boîte à outils.

2	Faites-le glisser sur l’onglet de la nouvelle page. Maintenez le pointeur sur l’onglet jusqu’à ce que la page apparaisse à l’avant de la boîte à outils.

3	Faites glisser le contrôle sur la zone principale de la page.

Note   Si la page dans laquelle vous voulez placer le contrôle n’est pas visible, vous pouvez augmenter la largeur de la boîte à outils pour afficher les onglets de toutes les pages, puis faire glisser le contrôle sur la page recherchée.


Modification de la taille de la boîte à outils

1	Déplacez le pointeur sur un bord ou sur un angle de la boîte à outils. Il se transforme alors en une flèche double.

2	Quand la flèche apparaît, faites glisser la boîte à outils pour modifier sa taille.


Affectation d'une rubrique d'aide personnalisée à un contrôle
Affectation d’une rubrique d’aide personnalisée à un contrôle

Cette procédure implique que vous avez créé au préalable un fichier d’aide personnalisé, et que vous l’avez associé à votre projet. La procédure permettant d’associer un fichier d’aide à un projet varie selon votre environnement de projet.

1	Sélectionnez le contrôle pour lequel vous avez écrit une rubrique d’aide personnalisée.

2	Dans la fenêtre Propriétés, sélectionnez la propriété HelpContextID.

3	Tapez l’identificateur de contexte de la rubrique appropriée à partir de votre fichier d’aide personnalisé.


Fichiers d'aide personnalisés
Fichiers d’aide personnalisés

En tant que développeur d’applications, vous pouvez utiliser un fichier d’aide personnalisé pour fournir des informations sur l’utilisation de votre application.

Pour créer un fichier d’aide personnalisé, utilisez un produit ou un outil permettant de créer des fichiers d’aide Windows.

Vous pouvez associer une rubrique spécifique de votre fichier d’aide personnalisé à chaque contrôle de votre application. Lorsqu’il fait tourner votre application, l’utilisateur peut accéder à votre rubrique d’aide en sélectionnant le contrôle et en appuyant sur F1.


Affectation d'une touche rapide
Affectation d’une touche rapide

1	En mode création, sélectionnez le contrôle dans la feuille.

2	Dans la fenêtre Propriétés, sélectionnez la propriété Accelerator.

3	Tapez un seul caractère comme valeur de la propriété Accelerator.

Conseil   Utilisez l’un des caractères de la légende du contrôle. Remarquez que le caractère sélectionné est souligné dans la légende du contrôle.


Affection d'une touche rapide à un objet Page ou Tab
Affectation d’une touche rapide à un objet Page ou Tab

1	En mode création, sélectionnez un objet Page ou Tab. Vérifiez que vous sélectionnez l’objet Page ou Tab et non le contrôle MultiPage ou TabStrip qui lui est associé. Quand un objet Page ou Tab est sélectionné, un rectangle s’affiche autour de sa légende.

2	Cliquez avec le bouton droit sur l’objet Page ou Tab sélectionné.

3	Dans le menu contextuel, sélectionnez Renommer.

4	Dans la boîte de dialogue Renommer, tapez un seul caractère dans le champ Touche rapide.

Conseil   Utilisez l’un des caractères de la légende du contrôle. Remarquez que le caractère sélectionné est souligné dans la légende du contrôle.


Affectation de l'info-bulle d'un contrôle à un objet Page ou Tab
Affectation de l’info-bulle d’un contrôle à un objet Page ou Tab

1	Sélectionnez un objet Page ou Tab.

Vérifiez que vous sélectionnez un objet Page ou Tab individuel et non le contrôle MultiPage ou TabStrip qui lui est associé. Quand un objet Page ou Tab est sélectionné, un rectangle apparaît autour de sa légende.

2	Cliquez avec le bouton droit sur l’objet Page ou Tab sélectionné.

3	Dans le menu contextuel, sélectionnez Renommer.

4	Dans le champ Info-bulle du contrôle, tapez la chaîne à utiliser comme info-bulle du contrôle.

5	Cliquez sur OK.

Conseil   Pour affecter l’info-bulle d’un contrôle à un contrôle MultiPage ou TabStrip, utilisez la propriété ControlTipText.


Affectation d'une info-bulle à un contrôle
Affectation d’une info-bulle à un contrôle

1	Sélectionnez le contrôle.

2	Dans la fenêtre Propriétés, sélectionnez la propriété ControlTipText.

Vous pouvez aussi définir la valeur de la propriété ControlTipText en utilisant du code.

3	Tapez la chaîne à utiliser comme info-bulle du contrôle.

Conseil   Pour affecter l’info-bulle d’un contrôle à un objet Page ou Tab, utilisez la commande Renommer du menu contextuel de l’objet Page ou Tab.


Qu'est-ce que l'info-bulle d'un contrôle ?
Qu’est-ce que l’info-bulle d’un contrôle ?

L’info-bulle d’un contrôle est une courte phrase décrivant un contrôle, un objet Page ou Tab. Cette info-bulle apparaît lorsque l’utilisateur place le pointeur sur un contrôle sans cliquer. L’info-bulle d’un contrôle est similaire à l’info-bulle de la barre d’outils. La différence tient au fait que Microsoft Forms propose les info-bulles aux développeurs au moment de la création, tandis que ces derniers mettent les info-bulles des contrôles à la disposition des utilisateurs lorsqu’ils exécutent l’application.

Si vous affectez une info-bulle à un contrôle MultiPage ou TabStrip, les info-bulles des objets Page ou Tab individuels contenus dans le MultiPage ou TabStrip ne sont pas affichés.


Affectation d'un légende
Affectation d’une légende

Pour affecter une légende à un contrôle CheckBox, CommandButton, Frame, Label, OptionButton ou ToggleButton :

1	Affichez la fenêtre Propriétés du contrôle.

2	Sélectionnez la propriété Caption.

3	Tapez le texte à utiliser comme légende.

Pour affecter une légende à un objet Page ou Tab :

1	Sélectionnez le contrôle MultiPage ou TabStrip contenant l’objet Page ou Tab.

2	Sélectionnez l’objet Page ou Tab. Quand l’objet Page ou Tab est sélectionné, un rectangle apparaît autour de sa légende.

3	Cliquez avec le bouton droit sur le contrôle MultiPage ou TabStrip sélectionné.

4	Dans le menu contextuel, sélectionnez Renommer.

5	Dans le champ Légende, tapez le texte à utiliser comme légende.

6	Cliquez sur OK.


Qu'est-ce qu'un légende ?
Qu’est-ce qu’une légende ?

Une légende est un texte descriptif qui s’affiche directement sur le contrôle ou autour de celui-ci. Les contrôles pouvant intégrer des légendes sont les suivants : CheckBox, CommandButton, Frame, Label, OptionButton et ToggleButton. Les objets Page et Tab appartenant aux contrôles MultiPage et TabStrip peuvent aussi comporter des légendes.


Définition de l'ordre de tabulation à l'aide la boîte de dialogue Ordre de tabulation
Définition de l’ordre de tabulation à l’aide de la boîte de dialogue Ordre de tabulation

1	Vérifiez qu’aucun contrôle n’est sélectionné.

2	Cliquez avec le bouton droit sur la feuille, et non pas sur un contrôle.

3	Dans le menu contextuel, sélectionnez Ordre de tabulation.

4	Sélectionnez le nom d’un contrôle à repositionner dans l’ordre de tabulation.

5	Sélectionnez Vers le haut ou Vers le bas jusqu’à ce que le nom du contrôle occupe la position appropriée dans l’ordre de tabulation.


Définition de l'ordre de tabulation à l'aide de la propriété TabIndex
Définition de l’ordre de tabulation à l’aide de la propriété TabIndex

1	Identifiez l’ordre de tabulation à utiliser dans la feuille.

L’index de tabulation du premier contrôle de l’ordre de tabulation est 0 ; l’index de tabulation du deuxième contrôle est 1, etc.

2	Sélectionnez un contrôle dans l’ordre de tabulation.

3	Dans la fenêtre Propriétés, sélectionnez la propriété TabIndex.

4	Tapez le nombre permettant d’identifier la position du contrôle dans l’ordre de tabulation.


Modification de l'ordre des pages dans un contrôle MultiPage ou TabStrip
Modification de l’ordre des pages dans un contrôle MultiPage ou TabStrip

1	Sélectionnez une page dans un contrôle MultiPage ou TabStrip.

2	Cliquez avec le bouton droit sur la légende de la page.

3	Dans le menu contextuel, sélectionnez Déplacer.

4	Dans la boîte de dialogue Déplacer, sélectionnez l’objet Page à déplacer.

5	Sélectionnez Vers le haut ou Vers le bas pour changer la position de la page.

6	Une fois tous les changements effectués, cliquez sur OK.

Note   Vous pouvez aussi utiliser la propriété Index pour modifier l’ordre des pages par l’intermédiaire de la fenêtre Propriétés. L’index de la première page est 0 ; l’index de la deuxième page est 1, etc.


Modification de la taille de la feuille

Au moment de la création :

•	Faites glisser la poignée de redimensionnement de la feuille jusqu’à obtenir la taille recherchée.

Au moment de l’exécution :

•	Affectez aux propriétés Height et Width de la feuille les valeurs correspondantes.


Modification de l'emplacement de la feuille
Modification de l’emplacement de la feuille

Par l’intermédiaire de l’interface utilisateur :

•	Faites glisser la barre de titre jusqu’à ce que la feuille occupe la place que vous souhaitez.

Au moment de la création :

•	Affectez aux propriétés Left et Top de la feuille les valeurs correspondantes. Vous pouvez définir ces propriétés par l’intermédiaire de la fenêtre Propriétés ou au moyen du code.


Moyens de protection des informations sensibles

La plupart des applications utilisent des données qui ne doivent être accessibles qu’à certains utilisateurs. Voici quelques suggestions qui vous permettront de protéger les informations sensibles contenues dans Microsoft Forms :

•	Écrivez un code qui rend un contrôle (et ses données) invisible pour les utilisateurs non autorisés. La propriété Visible rend un contrôle visible ou invisible. Pour plus d’informations sur la propriété Visible, cliquez sur [image].

•	Écrivez du code qui définit le premier plan et l’arrière-plan du contrôle sur la même couleur quand des utilisateurs non autorisés exécutent l’application, leur dissimulant ainsi les informations. Les propriétés ForeColor et BackColor déterminent la couleur de premier plan et la couleur d’arrière-plan. Pour toute information sur la propriété ForeColor, cliquez sur [image]. Pour toute information sur la propriété BackColor, cliquez sur [image].

•	Désactivez le contrôle quand des utilisateurs non autorisés exécutent l’application. La valeur de la propriété Enabled détermine la désactivation d’un contrôle. Pour toute information sur la propriété Enabled, cliquez sur [image].

•	Exigez un mot de passe pour accéder à l’application ou à un contrôle spécifique. Vous pouvez utiliser des espaces réservés à mesure que l’utilisateur entre chaque caractère. La propriété PasswordChar définit les caractères des espaces réservés. Pour toute information sur la propriété PasswordChar, cliquez sur [image].

Note   L’utilisation de mots de passe ou de toute autre technique préconisée plus haut permet d’améliorer la sécurité de votre application, mais elle ne garantit pas la protection contre les accès non autorisés à vos données.


Création d'un contrôle qui s'ajuste automatiquement à la taille de ses données
Création d’un contrôle qui s’ajuste automatiquement à la taille de ses données

Dans la fenêtre Propriétés, définissez la valeur de la propriété AutoSize sur True.


Moyens permettant de modifier l'aspect d'un contrôle
Moyens permettant de modifier l’aspect d’un contrôle

Microsoft Forms intègre plusieurs propriétés qui vous permettent de définir l’aspect des contrôles dans votre application :

•	ForeColor

•	BackColor, BackStyle

•	BorderColor, BorderStyle

•	SpecialEffect

La propriété ForeColor détermine la couleur de premier plan. Cette couleur s’applique à tout texte associé au contrôle, tel que la légende ou le contenu du contrôle.

Les propriétés BackColor et BackStyle s’appliquent à l’arrière-plan du contrôle. L’arrière-plan correspond à la zone comprise à l’intérieur des limites du contrôle, la zone entourant le texte d’un contrôle par exemple, mais n’inclut pas la bordure du contrôle. La propriété BackColor détermine la couleur d’arrière-plan. La propriété BackStyle détermine si l’arrière-plan est transparent. Il est judicieux d’utiliser un arrière-plan transparent dans un contrôle si la conception de votre application prévoit une image comme arrière-plan principal et que vous voulez voir cette image à travers le contrôle.

Les propriétés BorderColor, BorderStyle et SpecialEffect s’appliquent à la bordure du contrôle. Les propriétés BorderStyle ou SpecialEffect vous permettent de choisir un type de bordure. Vous ne pouvez utiliser qu’une seule de ces deux propriétés à la fois. Quand vous affectez une valeur à l’une de ces propriétés, la valeur de l’autre est automatiquement définie sur Aucun. La propriété SpecialEffect vous permet de choisir un style de bordures parmi plusieurs proposés, mais ne vous permet d’utiliser que les couleurs système pour la bordure. La propriété BorderStyle ne supporte qu’un seul style de bordure, mais vous permet de choisir n’importe quelle couleur correspondant à une valeur valide de la propriété BorderColor. La propriété BorderColor spécifie la couleur de la bordure du contrôle. Elle n’est valide que si vous utilisez la propriété BorderStyle pour créer la bordure.


Actions possibles avec une image sur un contrôle Image

Un contrôle Image n’est pas une image en soi, mais il contient une image qui est enregistrée dans un fichier séparé. Vous ne pouvez modifier l’image avec les propriétés du contrôle Image, mais vous pouvez les utiliser pour spécifier la manière dont l’image apparaît sur le contrôle Image.

Une application intéressante du contrôle Image consiste à utiliser ce contrôle comme image d’arrière-plan dans votre application. Pour ce faire, dimensionnez le contrôle Image de sorte que sa taille soit identique à celle de la feuille, puis placez d’autres contrôles au-dessus de l’arrière-plan.


Alignement du texte dans un contrôle

1	Dans la fenêtre Propriétés, sélectionnez la propriété TextAlign.

2	Cliquez sur la flèche de défilement vers le bas située à côté de la valeur de la propriété pour afficher la liste des choix disponibles.

3	Choisissez l’une des options suivantes :

•	Gauche—pour aligner le texte sur le bord gauche du contrôle.

•	Droite—pour aligner le texte sur le bord droit du contrôle.

•	Centré—pour centrer le texte par rapport à la longueur du contrôle.

La propriété TextAlign est disponible pour les contrôles ComboBox, Label et TextBox.


Affichage ou masquage de la grille

1	Dans le menu Outils, sélectionnez Options.

2	Sélectionnez l’onglet Général.

3	Choisissez l’une des options suivantes :

•	Pour afficher la grille, cochez la case Afficher la grille.

•	Pour masquer la grille, décochez la case Afficher la grille.

4	Cliquez sur OK.


Ajustement à la grille

1	Sélectionnez le contrôle.

2	Dans le menu Format, sélectionnez Ajuster à la grille.

3	Microsoft Forms ajuste la taille du contrôle sélectionné de manière à aligner chaque angle sur un point de la grille.


Ajustement de la taille

1	Sélectionnez le contrôle.

2	Dans le menu Format, sélectionnez Ajuster la taille.

3	Microsoft Forms définit la taille du contrôle de sorte qu’il soit suffisamment grand pour afficher son image et tout texte affecté à la propriété Caption ou Text.


Ajustement des contrôles à la même taille

1	Sélectionnez tous les contrôles que vous voulez de même taille.

2	Sélectionnez le contrôle principal.

3	Dans le menu Format, sélectionnez Rendre dimensions identiques.

4	Dans le menu en cascade, choisissez l’une des options suivantes :

•	Largeur—pour que tous les contrôles sélectionnés aient la même largeur que le contrôle principal.

•	Hauteur—pour que tous les contrôles sélectionnés aient la même hauteur que le contrôle principal.

•	Les deux—pour que tous les contrôles sélectionnés aient la même hauteur et la même largeur que le contrôle principal.


Alignement des contrôles

1	Sélectionnez les contrôles à aligner.

2	Sélectionnez le contrôle principal.

3	Dans le menu Format, sélectionnez Aligner.

4	Dans le menu en cascade, choisissez l’une des options suivantes pour aligner l’élément spécifié de chaque contrôle sélectionné sur le même élément du contrôle principal :

•	Gauche—pour aligner le bord gauche.

•	Centré—pour aligner le centre de chaque contrôle. Cela signifie qu’une ligne verticale dessinée au centre du contrôle principal contiendrait le centre de chaque contrôle sélectionné.

•	Droite—pour aligner le bord droit.

•	Haut—pour aligner le sommet.

•	Milieu—pour aligner le centre de chaque contrôle. Cela signifie qu’une ligne horizontale dessinée au centre du contrôle principal contiendrait aussi le centre de chaque contrôle sélectionné.

•	Bas—pour aligner le bas.

•	Grille—pour aligner l’angle supérieur gauche de chaque contrôle sélectionné sur le point de la grille le plus proche. Notez que cette option n’est pas basée sur la position du contrôle principal.

Note   Chaque commande du menu comporte une petite image décrivant la manière dont les contrôles seront alignés.


Réglage de l'espacemement horizontal et vertical entre les contrôles
Réglage de l’espacement horizontal et vertical entre les contrôles

1	Sélectionnez les contrôles entre lesquels vous voulez régler l’espacement.

2	Dans le menu Format, sélectionnez Espacement horizontal ou Espacement vertical.

3	Dans le menu en cascade, choisissez l’une des options suivantes :

•	Égaliser—pour que tous les espaces horizontaux et verticaux entre les contrôles soient de même taille. La taille de l’espace horizontal et vertical variera en fonction de la zone disponible pour l’affichage des contrôles et de la largeur totale de tous les contrôles.

•	Augmenter—pour augmenter l’espace entre les contrôles d’un bloc de grille.

•	Diminuer—pour réduire l’espace entre les contrôles d’un bloc de grille.

•	Supprimer—pour supprimer l’espace entre les contrôles. Dans ce cas, les contrôles ne se chevauchent pas, mais sont placés immédiatement les uns à côté des autres.


Organisation des boutons

1	Sélectionnez les contrôles CommandButton à organiser.

2	Dans le menu Format, sélectionnez Réorganiser les boutons.

3	Dans le menu en cascade, choisissez l’une des options suivantes :

•	En bas—pour placer les boutons sur une ligne commençant à l’angle inférieur gauche de la feuille et pour aligner le bas de tous les boutons.

•	À droite—pour placer les boutons dans une colonne commençant à l’angle supérieur droit de la feuille et pour aligner les bords droits de tous les boutons.

Une fois les boutons organisés, utilisez l’option Espacement horizontal ou Espacement vertical du menu Format pour régler l’espacement entre les boutons.

Conseil   Sélectionnez une grille de petite taille avant de choisir cette commande pour positionner les boutons près de la partie inférieure ou de la partie droite de la feuille. La modification de la taille de la grille, une fois les boutons en place, ne changera pas leur position.


Centrage des contrôles dans une feuille

1	Sélectionnez les contrôles ou les groupes à centrer.

2	Dans le menu Format, sélectionnez Centrer dans la feuille.

3	Dans le menu en cascade, choisissez l’une des options suivantes :

•	Horizontalement

•	Verticalement


Actions possibles avec les groupes de contrôles

Un groupe se compose d'au moins deux contrôles d’une feuille que vous considérez comme une seule unité. Vous pouvez inclure tout contrôle d’une feuille dans un groupe. Une fois que les contrôles sont intégrés dans un groupe, vous pouvez manipuler le groupe entier ou bien sélectionner un objet individuellement.

Microsoft Forms propose de nombreuses façons de travailler avec des groupes et avec les contrôles appartenant à un groupe. Une fois que vous avez sélectionné un groupe, vous pouvez effectuer les actions suivantes :

•	Dimensionner tous les contrôles d’un groupe simultanément. Pour plus d’informations, cliquez sur [image].

•	Dissocier le groupe de sorte que chaque contrôle soit indépendant des autres. Pour plus d’informations, cliquez sur [image].

•	Afficher le menu contextuel du groupe qui permet d’accéder rapidement aux commandes affectant le groupe. Pour plus d’informations, cliquez sur [image].

•	Sélectionner un seul contrôle à l’intérieur d’un groupe sans dissocier le groupe, ce qui vous permet de modifier les valeurs des propriétés de ce contrôle sans modifier les autres contrôles du groupe. Pour plus d’informations, cliquez sur [image].


Transparence dans Microsoft Forms

Microsoft Forms supporte la transparence dans deux zones : dans l’arrière-plan de certains contrôles et dans les images bitmap utilisées sur certains contrôles.

La propriété BackStyle détermine si un contrôle est transparent. Un contrôle transparent vous permet de voir ce qui se trouve sur la feuille derrière lui. Cette propriété est utile si l’arrière-plan de votre feuille est décoratif et que vous voulez le dissimuler le moins possible derrière les contrôles. Pour plus d’informations sur la création d’un contrôle transparent, cliquez sur [image].

Dans Microsoft Forms, vous pouvez afficher une image bitmap sur de nombreux contrôles. Certains contrôles supportent les images bitmap transparentes, autrement dit les images bitmap dans lesquelles une ou plusieurs couleurs d’arrière-plan sont transparentes. La transparence de ces images n’est pas contrôlée par une propriété du contrôle, mais par la couleur du pixel inférieur gauche de l’image. Microsoft Forms ne permet pas de modifier une image bitmap pour la rendre transparente ; pour ce faire, vous devez utiliser un éditeur d’image.

Dans Microsoft Forms, les images bitmap sont toujours transparentes sur les contrôles suivants :

•	CheckBox

•	CommandButton

•	Label

•	OptionButton

•	ToggleButton

Les images transparentes sont parfois floues. Si cet aspect vous déplaît, affichez l’image sur un contrôle acceptant les images opaques.

Si vous utilisez une image bitmap transparente sur un contrôle ne gérant pas les images transparentes, l’image s’affichera correctement mais vous ne pourrez voir au travers. Dans Microsoft Forms, les contrôles suivants ne supportent pas les images bitmap transparentes :

•	La fenêtre feuille (UserForm)

•	Frame

•	Image

•	MultiPage


Qu'est-ce qu'un menu contextuel ?
Qu’est-ce qu’un menu contextuel ?

Un menu contextuel s’affiche quand vous cliquez sur un objet avec le bouton droit de la souris. Dans Microsoft Forms, les objets suivants possèdent un menu contextuel :

•	La boîte à outils, chaque page de la boîte à outils et chaque élément d’une page de la boîte à outils.

•	Chaque contrôle d’une feuille.

•	Les groupes de contrôles (groupes créés à l’aide de la commande Grouper).

•	Les conteneurs (tels que UserForm).

•	Chaque objet Page d’un contrôle MultiPage.

•	Chaque objet Tab d’un contrôle TabStrip.

•	Plusieurs contrôles n’appartenant pas à un groupe.

Les commandes d’un menu contextuel varient en fonction de l’objet que vous sélectionnez. Par exemple, si vous sélectionnez plusieurs contrôles n’appartenant pas à un groupe, le menu contextuel intégrera la commande Grouper, mais pas celui de la boîte à outils.

Pour afficher le menu contextuel d’un contrôle ou d’un conteneur, cliquez avec le bouton droit sur l’objet.

Pour plus d’informations sur l’affichage du menu contextuel d’un contrôle MultiPage ou d’un objet Page, cliquez sur [image].

Pour plus d’informations sur l’affichage du menu contextuel d’un contrôle TabStrip ou d’un objet Tab, cliquez sur [image].


Moyens permettant de placer des données dans un contrôle ListBox ou ComboBox

Dans un contrôle ListBox ou ComboBox composé d’une seule colonne, la méthode AddItem offre une technique efficace d’ajout d’une entrée individuelle à la liste. Cependant, dans un contrôle ListBox ou ComboBox multicolonne, les propriétés List et Column proposent une autre technique : vous pouvez charger la liste à partir d’un tableau à deux dimensions.


Actions possibles avec un contrôle ListBox ou ComboBox multicolonne

Pour contrôler la largeur des colonnes d’un contrôle ListBox ou ComboBox multicolonne, vous pouvez spécifier la largeur, en points, de toutes les colonnes dans la propriété ColumnWidths. Lorsque vous spécifiez zéro pour une colonne spécifique, vous masquez cette colonne d’information à l’affichage.

Pour masquer à l’utilisateur toutes les colonnes d’un contrôle ListBox ou ComboBox à l’exception d’une seule, vous pouvez identifier la colonne d’informations à afficher en utilisant la propriété TextColumn.

De même, vous pouvez contrôler la colonne de valeurs qui est utilisée pour le contrôle quand l’utilisateur effectue une sélection en spécifiant le numéro de colonne dans la propriété BoundColumn.


Ajout d'éléments dans une liste à l'aide de la propriété List ou Column
Ajout d’éléments dans une liste à l’aide de la propriété List ou Column

1	Créez un contrôle ListBox ou ComboBox multicolonne.

2	Créez un tableau à deux dimensions contenant les éléments que vous voulez placer dans la liste.

3	Définissez la propriété ColumnCount du contrôle ListBox ou ComboBox afin qu’elle corresponde au nombre d’entrées de la liste.

4	Choisissez l’une des options suivantes :

•	Affectez au tableau la valeur de la propriété List. Ainsi, le contenu du contrôle ListBox correspondra exactement au contenu du tableau.

•	Affectez au tableau la valeur de la propriété Column. Cette propriété transpose les lignes et les colonnes de sorte que chaque ligne du ListBox corresponde à la colonne équivalente du tableau.


Affichage ou masquage des info-bulles

1	Dans le menu Outils, sélectionnez Options.

2	Sélectionnez l’onglet Général.

3	Choisissez l’une des options suivantes :

•	Pour afficher les info-bulles, cochez la case Afficher les info-bulles.

•	Pour masquer les info-bulles, décochez la case Afficher les info-bulles.


Modèle d'objet pour Microsoft Forms
Modèle d’objet pour Microsoft Forms

Le modèle d’objet de Microsoft Forms comprend les types d’objet suivants :

•	Contrôles

•	Collections

•	Objets (à l’intérieur des collections)

Chaque élément du modèle d’objet Microsoft Forms possède une certaine combinaison de propriétés, d’événements et de méthodes que vous pouvez utiliser pour faire fonctionner votre application comme vous le souhaitez.

Microsoft Forms intègre trois collections :

La collection Controls—contient tous les contrôles d’une feuille, d’un contrôle Frame ou d’un objet Page.

La collection Pages—contient tous les objets Page d’un contrôle MultiPage. Chaque MultiPage dispose de sa propre collection Pages séparée.

La collection Tabs—contient tous les objets Tab d’un contrôle TabStrip. Chaque TabStrip dispose de sa propre collection Tabs séparée.


Moyens permettant de créer un groupe d'options
Moyens permettant de créer un groupe d’options

Par défaut, tous les contrôles OptionButton sur un conteneur (une feuille, un contrôle MultiPage ou Frame, par exemple) appartiennent à un groupe d’options unique. Autrement dit, la sélection de l’un des boutons définit automatiquement la valeur de tous les autres boutons d’option de la feuille sur False.

Pour disposer de plusieurs groupes d’options, il existe deux moyens permettant de créer des groupes d’options supplémentaires sur une feuille :

•	Utilisez la propriété GroupName pour identifier les boutons associés.

•	Placez les boutons associés dans un contrôle Frame sur la feuille.

Il est préférable d’utiliser la première solution plutôt que la seconde car elle permet de diminuer le nombre de contrôles requis dans l’application. L’espace disque nécessaire pour votre application se trouve ainsi réduit, ce qui peut améliorer aussi la performance de votre application.

Note   Un contrôle TabStrip n’est pas un conteneur. Les boutons d’option du TabStrip sont inclus dans le groupe d’options de la feuille. Vous pouvez utiliser la propriété GroupName pour créer un groupe d’options à partir des boutons d’un contrôle TabStrip.


Création d'un groupe d'options à l'aide la propriété GroupName
Création d’un groupe d’options à l’aide de la propriété GroupName

1	Placez tous les contrôles OptionButton requis sur la feuille. Notez que les boutons d’option d’un contrôle MultiPage ou Frame formeront automatiquement un groupe d’options.

2	Identifiez les boutons pour chaque groupe à créer.

3	Tapez une valeur pour la propriété Name de chaque contrôle.

4	Affectez la même valeur à la propriété GroupName pour chacun des boutons d’un groupe


Correspondances possibles avec les entrées d'une liste
Correspondances possibles avec les entrées d’une liste

Microsoft Forms propose trois solutions permettant de faire correspondre une valeur entrée par l’utilisateur avec une entrée existant dans la liste d’un contrôle ListBox ou ComboBox :

•	Pas de correspondance—ne propose aucune recherche de correspondance entre l’entrée de l’utilisateur et une entrée de la liste.

•	Première lettre—compare la lettre qui vient d’être tapée à la première lettre de chaque entrée de la liste. La première correspondance dans la liste est sélectionnée.

•	Complète—compare l’entrée de l’utilisateur et essaie de trouver la correspondance exacte dans une entrée de la liste.

La fonction de correspondance se réinitialise après deux secondes (six secondes dans la version Extrême-Orient). Par exemple, si vous avez une liste des 50 états et que vous tapez "CO" rapidement, vous trouverez "Colorado". Mais si vous tapez "CO" lentement, vous trouverez "Ohio" car la recherche automatique se réinitialise entre les lettres.

Si vous choisissez la correspondance Complète, il est judicieux de trier les entrées de la liste par ordre alphabétique (pour ce faire, vous pouvez utiliser la propriété TextColumn). Si la liste n’est pas triée dans l’ordre alphabétique, la correspondance risque de ne pas s’effectuer correctement. Par exemple, si la liste inclut Alabama, Louisiane et Alaska dans cet ordre, "Alabama" sera considéré comme une correspondance complète si l’utilisateur tape "ala". En réalité, ce résultat est ambigu car il existe deux entrées dans la liste pouvant correspondre à l’entrée de l’utilisateur. Le tri par ordre alphabétique élimine cette ambiguïté.


Utilisation de la hiérarchie pour superposer des contrôles

Pour avancer ou pour reculer un contrôle dans la hiérarchie:

1.	Sélectionnez les contrôles à repositionner.

2.	Dans le menu Format, sélectionnez Ordre.

3.	Dans le menu en cascade, sélectionnez Amener au premier plan ou Envoyer à l’arrière-plan.

Pour déplacer un contrôle d’une position dans la hiérarchie :

1.	Sélectionnez les contrôles à repositionner.

2.	Dans le menu Format, sélectionnez Ordre.

3.	Dans le menu en cascade, sélectionnez Amener vers l’avant ou Envoyer vers l’arrière.

Note   Vous ne pouvez Annuler ou Rétablir les commandes de superposition telles que Envoyer à l’arrière-plan ou Amener au premier plan. Par exemple, si vous sélectionnez un objet et que vous cliquez sur Envoyer vers l’arrière-plan dans le menu contextuel, vous ne pourrez pas Annuler ou Rétablir cette action.

Les commandes de menu Amener au premier plan, Amener vers l’avant, Envoyer à l’arrière-plan et Envoyer vers l’arrière-plan permettent de modifier la hiérarchie d’un contrôle par rapport aux autres. Si la feuille comporte des contrôles ListBox, Frame ou MultiPage, ils se placent automatiquement le plus près possible du haut de la pile. Par exemple, l’utilisation de Envoyer vers l’arrière-plan pour un contrôle ListBox, Frame ou MultiPage, le place sous les autres contrôles ListBox, Frame ou MultiPage, mais pas sous les contrôles d’un autre type dans la pile. De même, la commande Amener au premier plan pour un contrôle autre que ListBox, Frame ou MultiPage rapproche le contrôle du haut de la pile, mais ne le place pas au-dessus des contrôles ListBox, Frame ou MultiPage.

D’un point de vue visuel, cela signifie que, si une feuille comporte au même endroit des contrôles ListBox, Frame, MultiPage ou tout autre contrôle Microsoft Forms, les contrôles ListBox, Frame ou MultiPage s’afficheront toujours au-dessus des autres contrôles. Si un contrôle ListBox, Frame ou MultiPage se trouve au même emplacement qu’un autre contrôle de ce type, la hiérarchie des contrôles détermine quel contrôle s’affiche au-dessus de l’autre.


Création d'un contrôle transparent
Création d’un contrôle transparent

1	Placez le contrôle de base sur la feuille.

2	Visualisez les propriétés du contrôle.

3	Positionnez la propriété BackStyle sur la valeur Transparent.

4	Si le contrôle supporte la propriété BorderStyle, positionnez sa valeur sur Aucune.

Note   Quand vous créez un contrôle transparent, la couleur d’arrière-plan ne s’affiche pas, la propriété BackColor est ainsi ignorée. Toutefois, la valeur de la propriété BackColor ne change pas quand un contrôle est transparent.


Suppression d'une image bitmap dans un contrôle
Suppression d’une image bitmap dans un contrôle

Dans la fenêtre Propriétés :

1	Sélectionnez la valeur de la propriété Picture (le mot "bitmap").

2	Appuyez sur SUPPRIMER.

Ou, avec le code :

•	Tapez l’instruction suivante : Object.Picture = LoadPicture(“”)


Affectation d'une image bitmap à un contrôle
Affectation d’une image bitmap à un contrôle

Dans la fenêtre Propriétés :

1	Sélectionnez la propriété Picture.

2	Dans la boîte de dialogue Image, tapez le nom de l’image et son emplacement.

Si l’image est plus grande que le contrôle, Microsoft Forms la met à l’échelle pour l’ajuster à la taille du contrôle, que l’image ait été affectée par l’intermédiaire de la fenêtre Propriété ou d’un code. La propriété PictureAlignment détermine la manière dont l’image est alignée à l’intérieur du contrôle.


Moyens permettant d'aligner une image sur un contrôle
Moyens permettant d’aligner une image sur un contrôle

La propriété Picture attribue une image bitmap ou tout autre type d’image à un contrôle. Une fois l’image affectée au contrôle, vous pouvez choisir l’une des options suivantes pour aligner l’image sur le contrôle :

•	Utilisez la propriété PictureAlignment pour centrer l’image dans le contrôle Image ou pour aligner un angle de l’image sur l’angle correspondant du contrôle Image.

•	Utilisez la propriété PictureSizeMode pour couper, étirer ou agrandir par zoom l’image dans le contrôle Image. Contrairement à l’extension, le zoom sur l’image ne provoque aucune déformation.

•	Utilisez la propriété PictureTiling pour afficher plusieurs copies de l’image dans le contrôle Image.


Sélection d'une taille de grille
Sélection d’une taille de grille

1	Dans le menu Outils, sélectionnez Options.

2	Dans la boîte de dialogue Options, sélectionnez la page Général.

3	Dans le groupe Paramètres de la grille de la feuille, spécifiez la taille de chaque bloc de la grille. Plus les nombres indiqués s'approchent de zéro, plus les blocs de la grille sont petits.

Conseil   Si vous utilisez la commande Réorganiser les boutons pour positionner les boutons de commande dans votre application, définissez les paramètres de la grille sur une valeur faible. Vous pourrez ainsi positionner les boutons plus près du bord de la feuille.


Création d'un groupe de contrôles
Création d’un groupe de contrôles

1	Dans la feuille, sélectionnez individuellement les contrôles à inclure dans le groupe.

2	Dans le menu Format, sélectionnez Grouper.


Dimensionnement de tous les contrôles d'un groupe
Dimensionnement de tous les contrôles d’un groupe

1	Sélectionnez le groupe.

Un rectangle avec des poignées de redimensionnement s’affiche autour du groupe pour indiquer qu’il est sélectionné.

2	Cliquez sur l’une des poignées de redimensionnement et faites-la glisser pour modifier la taille du rectangle.

3	Relâchez le bouton de la souris.

La taille de chaque contrôle changera proportionnellement à la nouvelle taille du rectangle entourant le groupe.


Dissociation d'un groupe de contrôles
Dissociation d’un groupe de contrôles

1	Sélectionnez le groupe.

2	Dans le menu Format, sélectionnez Séparer.


Affichage du menu contextuel d'un groupe
Affichage du menu contextuel d’un groupe

1	Sélectionnez le groupe.

2	Cliquez avec le bouton droit à l’intérieur du rectangle qui entoure le groupe.

Conseil   Cliquez n’importe où à l’intérieur du  groupe, excepté sur le menu contextuel, pour le faire disparaître, lorsque vous ne voulez pas utiliser les commandes de ce menu.


Sélection d'un contrôle à l'intérieur d'un groupe
Sélection d’un contrôle à l’intérieur d’un groupe

1	Sélectionnez le groupe.

2	Sélectionnez un seul contrôle à l’intérieur du groupe. Les poignées de redimensionnement autour du groupe deviennent plus claires et des poignées foncées apparaissent sur le contrôle sélectionné.

Vous pouvez modifier la valeur des propriétés du contrôle sélectionné. Ces changements n’affecteront que le contrôle sélectionné.

3	Une fois toutes les opérations terminées sur le contrôle sélectionné, cliquez n’importe où à l’intérieur du groupe, excepté sur le contrôle sélectionné. Le groupe reste toujours sélectionné.

Vous pouvez sélectionner un autre contrôle du groupe ou effectuer une autre tâche.


Affichage du menu contextuel d'un contrôle MultiPage ou d'un objet Page
Affichage du menu contextuel d’un contrôle MultiPage ou d’un objet Page

1	Vérifiez que la feuille n’est pas active.

2	Choisissez l’une des options suivantes :

•	Pour afficher le menu contextuel d’un objet Page individuel, cliquez avec le bouton droit sur la légende de la page.

•	Pour afficher le menu contextuel d’un contrôle MultiPage entier, cliquez avec le bouton droit n’importe où sur le contrôle, excepté sur la légende d’un objet Page du contrôle.


Affichage du menu contextuel d'un contrôle TabStrip ou d'un objet Tab
Affichage du menu contextuel d’un contrôle TabStrip ou d’un objet Tab

1	Vérifiez que la feuille n’est pas active.

2	Choisissez l’une des options suivantes :

•	Pour afficher le menu contextuel d’un objet Tab individuel, sélectionnez l’onglet correspondant.

Quand l’onglet est sélectionné, un rectangle en pointillé apparaît autour de sa légende.

Cliquez avec le bouton droit sur la légende sélectionnée.

•	Pour afficher le menu contextuel du contrôle TabStrip, cliquez avec le bouton droit n’importe où sur le contrôle, excepté sur la légende d’un objet Tab du contrôle.


Contrôles actifs et contrôles sélectionnés

Tous les contrôles ont un état actif et un état sélectionné. Un contrôle actif est un contrôle dont vous utilisez le contenu. S’il est sélectionné, c’est que vous utilisez le contrôle lui-même.

La plupart des contrôles sont sélectionnés automatiquement lorsque vous les placez sur la feuille. En mode création, des poignées de redimensionnement apparaissent autour de la bordure du contrôle quand il est sélectionné. Si vous le désélectionnez, vous pouvez le resélectionner en cliquant une fois dessus.

Cliquer sur un contrôle sélectionné le rend actif et vous pouvez alors modifier directement sa légende.

Que le contrôle soit à l’état sélectionné ou actif, vous pouvez utiliser SUPPR., CTRL+X et CTRL+C comme raccourcis clavier des commandes Supprimer, Couper et Coller, respectivement. À l’état sélectionné, ces commandes sont disponibles dans le menu contextuel et affectent le contrôle lui-même. À l’état actif, ces commandes s’appliquent au texte sélectionné à l’intérieur du contrôle ; si aucun texte n’est sélectionné, elles n’ont alors aucun effet. Elles ne sont pas disponibles dans le menu contextuel d’un contrôle actif.


Conseils sur la sélection de plusieurs contrôles

Vous pouvez sélectionner plusieurs contrôles des trois façons suivantes :

•	MAJ+CLIC : Microsoft Forms crée un rectangle de sélection invisible autour des contrôles sélectionnés et affiche des poignées de redimensionnement sur tous les contrôles placés dans le rectangle.

•	CTRL+CLIC : des poignées de redimensionnement n’apparaissent que sur les contrôles sélectionnés, et non sur les contrôles situés dans le rectangle. Cette méthode peut parfois sélectionner d’autres contrôles adjacents ou proches des contrôles sélectionnés. Dans ce cas, utilisez le pointeur Sélectionner des objets, décrit ci-dessous.

•	Le pointeur Sélectionner des objets de la boîte à outils : dessine un rectangle sur les contrôles que vous voulez sélectionner. Tous les contrôles situés dans le rectangle ou qui le jouxtent sont sélectionnés.

Lorsque vous sélectionnez plusieurs contrôles, l’un d’eux devient la référence pour les autres. C’est le contrôle principal.


Conseils sur la définition du contrôle principal

Lorsque vous sélectionnez plusieurs contrôles, vous pouvez définir le contrôle principal de l’une des façons suivantes :

•	MAJ+CLIC : le contrôle principal est le premier contrôle sélectionné avec la combinaison MAJ+CLIC.

•	CTRL+CLIC : le contrôle principal est le dernier contrôle sélectionné avec la combinaison CTRL+CLIC.

•	Le pointeur Sélectionner des objets de la boîte à outils : le contrôle principal est le plus proche du pointeur de la souris lorsque vous commencez à tracer le rectangle sur les contrôles à sélectionner.

Si vous utilisez la combinaison CTRL+CLIC deux fois sur le contrôle sélectionné, il devient le contrôle principal .


Annuler et Refaire dans Microsoft Forms

Microsoft Forms supporte plusieurs niveaux pour les commandes Annuler et Refaire. Cela signifie que vous pouvez annuler une série d’actions, et non juste une seule.

CTRL+Z est le raccourci clavier d’Annuler, CTRL+Y de Refaire.

Vous ne pouvez annuler ou refaire des commandes de superposition, telles que Envoyer à l’arrière-plan ou Amener au premier plan. Par exemple, si vous sélectionnez un objet et que vous cliquez sur Envoyer à l’arrière dans le menu contextuel, vous ne pourrez ni annuler ni refaire cette action.


Références ByVal dans Microsoft Forms

Le mot clé ByVal dans Microsoft Forms indique qu’un argument est passé comme valeur. C’est la signification standard de ByVal dans Visual Basic. Toutefois, dans Microsoft Forms, vous pouvez utiliser ByVal avec un objet ReturnBoolean, ReturnEffect, ReturnInteger ou ReturnString. Dans ce cas, la valeur passée n’est pas un type de données simple, c’est un pointeur vers l’objet.

Utilisé avec ces objets, ByVal réfère à un objet et non à une méthode de passation de paramètres. Chacun des objets cités ci-dessus a une propriété Value que vous pouvez définir. Vous pouvez également passer cette valeur vers ou à partir d’une fonction. Comme vous pouvez modifier la valeur des membres de l’objet, les événements produisent des résultats cohérents avec le comportement de ByRef, même si la syntaxe de l’événement indique que le paramètre est ByVal.

Attribuer une valeur à un argument associé à ReturnBoolean, ReturnEffect, ReturnInteger ou ReturnString est équivalent à définir la valeur de tout autre argument. Par exemple, si la syntaxe de l’événement indique un argument Cancel utilisé avec l’objet ReturnBoolean, l’instruction Cancel=True reste valide, comme pour tout autre type de données.


Renommer, boîte de dialogue

Cette boîte de dialogue contient les valeurs des propriétés Accelerator, Caption et ControlTipText de l’objet Page ou Tab sélectionné. Elle contient les valeurs des propriétés Caption et ToolTipText de la page courante de la boîte à outils. Vous pouvez mettre à jour les valeurs de ces propriétés.

On appelle "Accelerator" (touche rapide) une touche du clavier sur laquelle l’utilisateur appuie simultanément à la touche ALT pour sélectionner un objet Page ou Tab. On appelle "Caption" (légende) le texte figurant dans la zone d’onglet d’un objet Page ou Tab ou de la page courante de la boîte à outils. La propriété ControlTipText (info-bulle du contrôle) correspond à la courte description d’un contrôle qui s’affiche lorsque l’utilisateur place le pointeur sur le contrôle sans cliquer.

Pour définir une touche rapide d’un objet Page ou Tab :

•	Tapez un seul caractère pour Touche d'accès rapide (Accelerator).

Pour renommer l’objet Page ou Tab :

•	Tapez une nouvelle valeur pour Légende (Caption).

Pour définir la propriété ControlTipText d’un objet Page ou Tab :

•	Tapez une nouvelle valeur pour l'info-bulle du contrôle (ControlTipText.)

Pour définir la propriété ToolTipText de la page courante de la boîte à outils :

•	Tapez une nouvelle valeur pour Texte de l'info-bulle (ToolTipText).

Note   Cliquez sur OK pour appliquer les nouvelles valeurs à la page, à l’onglet ou à la page de la boîte à outils.


Ordre des pages/Ordre des onglets, boîte de dialogue

Pour changer la position d’une page ou d’un onglet :

1.	Sélectionnez le nom de l’objet Page ou Tab à déplacer.

2.	Sélectionnez Vers le haut ou Vers le bas jusqu’à ce que l’élément sélectionné occupe la position souhaitée.

3.	Quand tous les éléments sont dans l’ordre recherché, cliquez sur OK.


Contrôles personnalisés, boîte de dialogue

1.	Dans la liste Contrôles disponibles, sélectionnez le ou les contrôles à ajouter à la boîte à outils.

2.	Cliquez sur OK.

Conseil   Vous pouvez filtrer la liste Contrôles disponibles en sélectionnant des options dans le groupe Afficher.


Personnaliser un contrôle, boîte de dialogue

Cette boîte de dialogue contient la propriété Info-bulle du contrôle (ControlTipText) et l’icône qui représente le contrôle dans la boîte à outils. Avec cette boîte de dialogue, vous pouvez définir ou modifier la propriété Info-bulle du contrôle (ControlTipText) associée à ce contrôle et aussi changer l’icône qui est affichée dans la boîte à outils.

Pour définir ou modifier la propriété Info-bulle du contrôle (ControlTipText) :

•	Tapez une nouvelle valeur pour Info-bulle du contrôle (ControlTipText).

Pour modifier l’icône :

1.	Sélectionnez le bouton de commande Éditer une image.

2.	Utilisez l’Éditeur d’image pour modifier l’icône.

Pour charger une autre icône :

1.	Sélectionnez le bouton de commande Charger une image.

2.	Dans la boîte de dialogue commune, sélectionnez un fichier image.

3.	Cliquez sur OK pour appliquer les nouvelles valeurs.


Item, méthode, exemple

L’exemple suivant utilise la méthode Item pour accéder aux membres individuels des collections Controls et Pages. L’utilisateur choisit un bouton d’option pour la collection Controls ou le contrôle MultiPage, puis il clique sur le contrôle CommandButton. Le nom du contrôle approprié est retourné dans le contrôle Label.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle Label nommé Label1,

•	deux contrôles OptionButton nommés OptionButton1 et OptionButton2,

•	un contrôle MultiPage nommé MultiPage1.

Dim MyControl As Object

Dim ControlsIndex As Integer

Private Sub CommandButton1_Click()

    If OptionButton1.Value = True Then

        'Traitez la collection Controls pour le

        'projet UserForm

        Set MyControl = Controls.Item(ControlsIndex)

        Label1.Caption = MyControl.Name

        'Préparez un index pour le prochain contrôle

        'du projet Userform

        ControlsIndex = ControlsIndex + 1

        If ControlsIndex >= Controls.Count Then

            ControlsIndex = 0

        End If

    ElseIf OptionButton2.Value = True Then

        'Traitez l’objet Page en cours de la

        'collection Pages

        Set MyControl = MultiPage1.Pages.Item(MultiPage1.Value)

        Label1.Caption = MyControl.Name

    End If

End Sub

Private Sub UserForm_Initialize()

    ControlsIndex = 0

    'TabsIndex = 0

    OptionButton1.Caption = "Collection Controls"

    OptionButton2.Caption = "Collection Pages"

    OptionButton1.Value = True

    CommandButton1.Caption = "Accédez au nom " & _

                             "du membre”

End Sub


Object, propriété, exemple

Supposez qu’un nouveau contrôle ait une propriété Top différente de la propriété Top standard de Microsoft Forms. Vous pouvez utiliser l’une ou l’autre des propriété avec l’une des syntaxes suivantes :

•	control.Top utilise la propriété Top standard.

•	control.Object.Top utilise la propriété Top du contrôle ajouté.


TabStop, propriété, exemple

L’exemple suivant utilise la propriété TabStop pour vérifier si l’utilisateur peut appuyer sur la touche TAB pour placer le focus sur un contrôle particulier. L’utilisateur appuie sur TAB pour déplacer le focus sur les contrôles de la feuille, puis clique sur le contrôle ToggleButton pour modifier la propriété TabStop de CommandButton1. Si TabStop a la valeur False, la touche TAB ne placera pas le focus sur CommandButton1.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle ToggleButton nommé ToggleButton1,

•	un ou plusieurs contrôles, tels qu’un contrôle OptionButton ou ListBox.

Private Sub CommandButton1_Click()

    MsgBox "CommandButton1 cliqué."

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1 = True Then

      CommandButton1.TabStop = True

      ToggleButton1.Caption = "Propriété TabStop " _

                              & "activée"

    Else

      CommandButton1.TabStop = False

      ToggleButton1.Caption = "Propriété TabStop " _

                              & " désactivée"

    End If

End Sub

Private Sub UserForm_Initialize()

    CommandButton1.Caption = "Afficher le message"

    ToggleButton1.Caption = "Propriété TabStop " _

                            & "activée"

    ToggleButton1.Value = True

    ToggleButton1.Width = 90

End Sub


TakeFocusOnClick, propriété, exemple

L’exemple suivant utilise la propriété TakeFocusOnClick pour vérifier si un contrôle CommandButton reçoit le focus lorsque l’utilisateur clique dessus. L’utilisateur clique sur un contrôle autre que CommandButton1, puis sur CommandButton1. Si TakeFocusOnClick a la valeur True, CommandButton1 reçoit le focus après le clic. L’utilisateur peut modifier la valeur de la propriété TakeFocusOnClick en cliquant sur ToggleButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle ToggleButton nommé ToggleButton1,

•	un ou plusieurs autres contrôles, tels que OptionButton ou ListBox.

Private Sub CommandButton1_Click()

    MsgBox "Regardez CommandButton1 pour " & _

           "distinguer s’il prend le focus."

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1 = True Then

        CommandButton1.TakeFocusOnClick = True

        ToggleButton1.Caption = "Propriété TakeFocusOnClick activée"

    Else

        CommandButton1.TakeFocusOnClick = False

        ToggleButton1.Caption = "Propriété " & _

               "TakeFocusOnClick désactivée"

    End If

End Sub

Private Sub UserForm_Initialize()

    CommandButton1.Caption = "Afficher le message"

    ToggleButton1.Caption = "Propriété " & _

          "TakeFocusOnClick activée"

    ToggleButton1.Value = True

    ToggleButton1.Width = 90

End Sub


MatchEntry, propriété, exemple

L’exemple suivant utilise la propriété MatchEntry pour illustrer la concordance de caractères disponible pour les contrôles ComboBox et ListBox. Dans cet exemple, l’utilisateur peut définir le type de concordance souhaité avec les contrôles OptionButton et taper du texte dans le contrôle ComboBox pour spécifier un élément de la liste.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	trois contrôles OptionButton nommés OptionButton1 à OptionButton3,

•	un contrôle ComboBox nommé ComboBox1.

Private Sub OptionButton1_Click()

    ComboBox1.MatchEntry = fmMatchEntryNone

End Sub

Private Sub OptionButton2_Click()

    ComboBox1.MatchEntry = fmMatchEntryFirstLetter

End Sub

Private Sub OptionButton3_Click()

        ComboBox1.MatchEntry = fmMatchEntryComplete

End Sub

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 1 To 9

        ComboBox1.AddItem "Choix " & i

    Next i

    ComboBox1.AddItem "Accro du chocolat"

    OptionButton1.Caption = "Aucune concordance"

    OptionButton1.Value = True

    OptionButton2.Caption = "Concordance simple"

    OptionButton3.Caption = "Concordance étendue"

End Sub


MatchFound, MatchRequired, propriétés, exemple

L’exemple suivant utilise les propriétés MatchFound et MatchRequired pour illustrer des aspects supplémentaires de la concordance de caractères pour un contrôle ComboBox. La vérification de concordance s’effectue lors de l’événement Change.

Dans cet exemple, l’utilisateur précise si le texte du contrôle ComboBox doit correspondre à l’un des éléments listés dans le contrôle ComboBox. L’utilisateur spécifie avec un contrôle CheckBox si la concordance est requise, et tape dans le contrôle ComboBox pour indiquer un élément de la liste.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ComboBox nommé ComboBox1,

•	un contrôle CheckBox nommé CheckBox1.

Private Sub CheckBox1_Click()

    If CheckBox1.Value = True Then

      ComboBox1.MatchRequired = True

      MsgBox "Pour déplacer le focus du " & _

        "contrôle ComboBox, vous devez " & _

        "spécifier une entrée correspondante " & _

        "de la liste ou appuyer sur ÉCHAP."

    Else

      ComboBox1.MatchRequired = False

      MsgBox " Pour déplacer le focus du " & _

       "contrôle ComboBox, utilisez la touche " & _

       "TAB ou cliquez sur un autre contrôle. " & "La concordance est facultative."

    End If

End Sub

Private Sub ComboBox1_Change()

    If ComboBox1.MatchRequired = True Then

    'MSForms handles this case automatically

    Else

        If ComboBox1.MatchFound = True Then

            MsgBox "Texte concordant trouvé; " & _

              " concordance facultative."

        Else

            MsgBox "Aucun texte correspondant " & _

               "trouvé;concordance facultative."

        End If

    End If

End Sub

Private Sub UserForm_Initialize()

Dim i As Integer

For i = 1 To 9

    ComboBox1.AddItem "Choix " & i

Next i

ComboBox1.AddItem "Accro du chocolat"

CheckBox1.Caption = "MatchRequired"

CheckBox1.Value = True

End Sub


MultiSelect, Selected, propriétés, exemple

L’exemple suivant utilise les propriétés MultiSelect et Selected pour illustrer comment l’utilisateur peut sélectionner un ou plusieurs éléments dans un contrôle ListBox. L’utilisateur spécifie avec un bouton d’option une méthode de sélection, et sélectionne un ou plusieurs éléments du contrôle ListBox. L’utilisateur peut afficher les éléments sélectionnés dans un deuxième contrôle ListBox en cliquant sur le contrôle CommandButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles ListBox nommés ListBox1 et ListBox2,

•	un contrôle CommandButton nommé CommandButton1,

•	trois contrôles OptionButton nommés OptionButton1 à OptionButton3.

Dim i As Integer

Private Sub CommandButton1_Click()

    ListBox2.Clear

    For i = 0 To 9

        If ListBox1.Selected(i) = True Then

            ListBox2.AddItem ListBox1.List(i)

        End If

    Next i

End Sub

Private Sub OptionButton1_Click()

    ListBox1.MultiSelect = fmMultiSelectSingle

End Sub

Private Sub OptionButton2_Click()

    ListBox1.MultiSelect = fmMultiSelectMulti

End Sub

Private Sub OptionButton3_Click()

    ListBox1.MultiSelect = fmMultiSelectExtended

End Sub

Private Sub UserForm_Initialize()

    For i = 0 To 9

        ListBox1.AddItem "Choix " & _

         (ListBox1.ListCount + 1)

    Next i

    OptionButton1.Caption = "Sélection simple"

    ListBox1.MultiSelect = fmMultiSelectSingle

    OptionButton1.Value = True

    OptionButton2.Caption = "Sélection multiple"

    OptionButton3.Caption = "Sélection étendue"

    CommandButton1.Caption = "Afficher les " & _

                             "sélections"

    CommandButton1.AutoSize = True

End Sub


Style, propriété (ComboBox, contrôle), exemple

L’exemple suivant utilise la propriété Style pour modifier l’effet de la frappe de texte dans la zone de texte d’un contrôle ComboBox. L’utilisateur choisit un style en sélectionnant un contrôle OptionButton, puis tape dans le contrôle ComboBox pour sélectionner un élément. Si la propriété Style a la valeur fmStyleDropDownList, l’utilisateur doit sélectionner un élément de la liste déroulante. Si la propriété Style a la valeur fmStyleDropDownCombo, l’utilisateur peut taper dans la zone de texte pour spécifier un élément de la liste déroulante.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles OptionButton nommés OptionButton1 et OptionButton2.

•	un contrôle ComboBox nommé ComboBox1.

Private Sub OptionButton1_Click()

    ComboBox1.Style = fmStyleDropDownCombo

End Sub

Private Sub OptionButton2_Click()

    ComboBox1.Style = fmStyleDropDownList

End Sub

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 1 To 10

        ComboBox1.AddItem "Choix " & i

    Next i

    OptionButton1.Caption = "Sélectionnez comme " & _

                 "dans un contrôle ComboBox"

    OptionButton1.Value = True

    ComboBox1.Style = fmStyleDropDownCombo

    OptionButton2.Caption = "Sélectionnez comme " & _

                           "dans un contrôle ListBox"

End Sub


Style, propriété (MultiPage, TabStrip, contrôles), exemple

L’exemple suivant utilise la propriété Style pour définir l’aspect des onglets d’un contrôle MultiPage ou TabStrip. Il illustre également l’utilisation du contrôle Label. L’utilisateur choisit un style avec un contrôle OptionButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	trois contrôles OptionButton nommés OptionButton1 à OptionButton3,

•	un contrôle MultiPage nommé MultiPage1,

•	un contrôle TabStrip nommé TabStrip1,

•	un contrôle dans le contrôle TabStrip,

•	un contrôle sur chaque page du contrôle MultiPage.

Private Sub OptionButton1_Click()

    MultiPage1.Style = fmTabStyleTabs

    TabStrip1.Style = fmTabStyleTabs

End Sub

Private Sub OptionButton2_Click()

    'Note that the page borders are invisible

    MultiPage1.Style = fmTabStyleButtons

    TabStrip1.Style = fmTabStyleButtons

End Sub

Private Sub OptionButton3_Click()

    'Remarquez que la bordure de la page est

    'invisible et que le corps de la page commence là

    'où les onglets apparaissent

MultiPage1.Style = fmTabStyleNone

    TabStrip1.Style = fmTabStyleNone

End Sub

Private Sub UserForm_Initialize()

    Label1.Caption = "Style Page/Onglet"

    OptionButton1.Caption = "Onglets"

    OptionButton1.Value = True

    MultiPage1.Style = fmTabStyleTabs

    TabStrip1.Style = fmTabStyleTabs

    OptionButton2.Caption = "Boutons"

    OptionButton3.Caption = "Aucun onglet ni bouton"

End Sub


OldLeft, OldTop, OldHeight, OldWidth, propriétés, exemple

L’exemple suivant utilise les propriétés OldLeft, OldTop, OldHeight et OldWidth lors de l’événement Layout pour conserver à un contrôle sa position et sa taille courantes. L’utilisateur clique sur le contrôle CommandButton libellé Déplacer ComboBox pour le déplacer, puis répond au message. L’utilisateur peut cliquer sur le contrôle CommandButton libellé Réinitialiser ComboBox pour restaurer le contrôle en vue d’une nouvelle utilisation.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2,

•	un contrôle ComboBox nommé ComboBox1.

Dim Initialize As Integer

Dim ComboLeft, ComboTop, ComboWidth, ComboHeight As Integer

Private Sub UserForm_Initialize()

    Initialize = 0

    CommandButton1.Caption = "Déplacer ComboBox"

    CommandButton2.Caption = "Réinitialiser ComboBox"

    'Informations pour réinitialiser les paramètres

    'du contrôle ComboBox

    ComboLeft = ComboBox1.Left

    ComboTop = ComboBox1.Top

    ComboWidth = ComboBox1.Width

    ComboHeight = ComboBox1.Height

End Sub

Private Sub CommandButton1_Click()

        ComboBox1.Move 0, 0, , , True

End Sub

Private Sub UserForm_Layout()

    Dim MyControl As Control

    Dim MsgBoxResult As Integer

    If Initialize = 0 Then   'Evite l'exécution de

                             'MsgBox lors de l'appel

                             'de l'événement layout

                             'event au moment de

                             'l'initialisation.

        Initialize = 1

        Exit Sub

    End If

    MsgBoxResult = MsgBox("Lors de l’événement " & _

             "Layout - Continuer le déplacement ?", _

             vbYesNo)

    If MsgBoxResult = vbNo Then

        ComboBox1.Move ComboBox1.OldLeft, ComboBox1.OldTop, ComboBox1.OldWidth, ComboBox1.OldHeight

    End If

End Sub

Private Sub CommandButton2_Click()

    ComboBox1.Move ComboLeft, ComboTop, ComboWidth, ComboHeight

    'OldLeft, OldTop, OldWidth, et OldHeight ne sont

    'pas reconnues ici.

    'Si l'instruction suivante n'est pas mise

    'en commantaire, une erreur  se produira à

    'l'execution.

    'ComboBox1.Move ComboBox1.OldLeft, ComboBox1.OldTop, ComboBox1.OldWidth, ComboBox1.OldHeight

End Sub


TabFixedHeight, TabFixedWidth, propriétés, exemple
TabFixedHeight, TabFixedWidth, , propriétés, exemple

L’exemple suivant utilise la propriété TabFixedHeight et TabFixedWidth pour définir la taille des onglets utilisés dans les contrôles MultiPage et TabStrip. L’utilisateur clique sur les contrôles SpinButton pour spécifier la hauteur et la largeur des onglets dans les contrôles MultiPage et TabStrip.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle MultiPage nommé MultiPage1.

•	un contrôle TabStrip nommé TabStrip1.

•	un contrôle Label nommé Label1 pour la largeur du contrôle.

•	un contrôle SpinButton nommé SpinButton1 pour la largeur du contrôle.

•	un contrôle TextBox nommé TextBox1 pour la largeur du contrôle.

•	un contrôle Label nommé Label2 pour la hauteur du contrôle.

•	un contrôle SpinButton nommé SpinButton2 pour la hauteur du contrôle.

•	un contrôle TextBox nommé TextBox2 pour la hauteur du contrôle.

Private Sub UpdateTabWidth()

    TextBox1.Text = SpinButton1.Value

    TabStrip1.TabFixedWidth = SpinButton1.Value

    MultiPage1.TabFixedWidth = SpinButton1.Value

End Sub

Private Sub UpdateTabHeight()

    TextBox2.Text = SpinButton2.Value

    TabStrip1.TabFixedHeight = SpinButton2.Value

    MultiPage1.TabFixedHeight = SpinButton2.Value

End Sub

Private Sub UserForm_Initialize()

    MultiPage1.Style = fmTabStyleButtons

    Label1.Caption = "Largeur d’onglet"

    SpinButton1.Min = 0

    SpinButton1.Max = TabStrip1.Width / TabStrip1.Tabs.Count

    SpinButton1.Value = 0

    TextBox1.Locked = True

    UpdateTabWidth

    Label2.Caption = "Hauteur d’onglet"

    SpinButton2.Min = 0

    SpinButton2.Max = TabStrip1.Height

    SpinButton2.Value = 0

    TextBox2.Locked = True

    UpdateTabHeight

End Sub

Private Sub SpinButton1_SpinDown()

    UpdateTabWidth

End Sub

Private Sub SpinButton1_SpinUp()

    UpdateTabWidth

End Sub

Private Sub SpinButton2_SpinDown()

    UpdateTabHeight

End Sub

Private Sub SpinButton2_SpinUp()

    UpdateTabHeight

End Sub


TabIndex, propriété, exemple

L’exemple suivant utilise la propriété TabIndex pour afficher et définir l’ordre de tabulation de chaque contrôle. L’utilisateur peut appuyer sur TAB pour atteindre le prochain contrôle dans l’ordre de tabulation et afficher la propriété TabIndex du contrôle. L’utilisateur peut aussi cliquer sur un contrôle pour afficher sa propriété TabIndex. L’utilisateur peut modifier la propriété TabIndex du contrôle en spécifiant une nouvelle valeur d’index dans le contrôle TextBox et en cliquant sur CommandButton3. Modifier la propriété TabIndex d’un contrôle met également à jour la propriété TabIndex des autres contrôles du contrôle Frame.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	un contrôle TextBox nommé TextBox1,

•	un contrôle Frame nommé Frame1,

•	un contrôle TextBox dans le contrôle Frame nommé TextBox2,

•	deux contrôles CommandButton dans le contrôle Frame nommés CommandButton1 et CommandButton2,

•	un contrôle ScrollBar dans le contrôle Frame nommé ScrollBar1,

•	un contrôle CommandButton (ne se trouvant pas dans le contrôle Frame) nommé CommandButton3.

Private Sub MoveToFront()

    Dim i, Temp As Integer

    Temp = Frame1.ActiveControl.TabIndex

    For i = 0 To Temp - 1

        Frame1.Controls.Item(i).TabIndex = i + 1

    Next i

    Frame1.ActiveControl.TabIndex = 0

    TextBox1.Text = Frame1.ActiveControl.TabIndex

End Sub

Private Sub CommandButton3_Click()

    Dim i, Temp As Integer

    If IsNumeric(TextBox1.Text) Then

        Temp = Val(TextBox1.Text)

        If Temp >= Frame1.Controls.Count Or Temp < 0 Then

            'Entrée hors des limites;

            'déplace le contrôle au début dans

            'l'ordre des tabulation

            MoveToFront

        ElseIf Temp > Frame1.ActiveControl.TabIndex Then

            'Déplace l'entrée vers le bas dans la

            'liste

            For i = Frame1.ActiveControl.TabIndex + 1 To Temp

                Frame1.Controls.Item(i).TabIndex = i - 1

            Next i

            Frame1.ActiveControl.TabIndex = Temp

            TextBox1.Text = Frame1.ActiveControl.TabIndex

        Else

            'Déplace l'entrée vers le haut,

            'dans la liste

            For i = Frame1.ActiveControl.TabIndex - 1 To Temp

                Frame1.Controls.Item(i).TabIndex = i + 1

            Next i

            Frame1.ActiveControl.TabIndex = Temp

            TextBox1.Text = Frame1.ActiveControl.TabIndex

        End If

    Else

        'Entrée texte; déplace le contrôle au début

        'dans l'ordre des tabulations

        MoveToFront

    End If

End Sub

Private Sub UserForm_Initialize()

    Label1.Caption = "Propriété TabIndex"

    Frame1.Controls(0).SetFocus

    TextBox1.Text = Frame1.ActiveControl.TabIndex

    Frame1.Cycle = fmCycleCurrentForm

    CommandButton3.Caption = "Définir la propriété" _

                           & " TabIndex"

    CommandButton3.TakeFocusOnClick = False

End Sub

Private Sub TextBox2_Enter()

    TextBox1.Text = Frame1.ActiveControl.TabIndex

End Sub

Private Sub CommandButton1_Enter()

    TextBox1.Text = Frame1.ActiveControl.TabIndex

End Sub

Private Sub CommandButton2_Enter()

    TextBox1.Text = Frame1.ActiveControl.TabIndex

End Sub

Private Sub ScrollBar1_Enter()

    TextBox1.Text = Frame1.ActiveControl.TabIndex

End Sub


Layout, événement, LayoutEffect, propriété, exemple

L’exemple suivant déplace un contrôle sélectionné sur une feuille avec la méthode Move, et utilise l’événement Layout et la propriété LayoutEffect pour identifier le contrôle déplacé (et qui a modifié la disposition du contrôle UserForm). L’utilisateur clique sur un contrôle pour le déplacer, puis sur le contrôle CommandButton. Une zone de message affiche le nom du contrôle déplacé.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1.

•	un contrôle ComboBox nommé ComboBox1.

•	un contrôle OptionButton nommé OptionButton1.

•	un contrôle CommandButton nommé CommandButton1.

•	un contrôle ToggleButton nommé ToggleButton1.

Private Sub UserForm_Initialize()

    CommandButton1.Caption = "Déplacez le contrôle" _

                           & " courant"

    CommandButton1.AutoSize = True

    CommandButton1.TakeFocusOnClick = False

    ToggleButton1.Caption = "Utilisez l’événement" _

                          & " Layout"

    ToggleButton1.Value = True

End Sub

Private Sub CommandButton1_Click()

    If ActiveControl.Name = "ToggleButton1" Then

        'Ne déplace pas le contrôle

    Else

        'Déplace le contrôle, en utilisant

        'l'événement Layout quand la valeur de

        'ToggleButton1.Value est True

        ActiveControl.Move 0, 0, , , ToggleButton1.Value

    End If

End Sub

Private Sub UserForm_Layout()

    Dim MyControl As Control

    MsgBox "Dans l’événement Layout"

    'Recherche le contrôle qui est déplacé

    For Each MyControl In Controls

        If MyControl.LayoutEffect = fmLayoutEffectInitiate Then

            MsgBox MyControl.Name & " est déplacé."

            Exit For

        End If

    Next

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

        ToggleButton1.Caption = "Utiliser l’événement Layout"

    Else

        ToggleButton1.Caption = "Aucun événement Layout"

    End If

End Sub


Tag, propriété, exemple

L’exemple suivant utilise la propriété Tag pour enregistrer des données supplémentaires relatives à chaque contrôle du contrôle UserForm. L’utilisateur clique sur un contrôle, puis sur le contrôle CommandButton. Le contenu de la propriété Tag du contrôle cliqué est renvoyé dans le contrôle TextBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1.

•	un contrôle CommandButton nommé CommandButton1.

•	un contrôle ScrollBar nommé ScrollBar1.

•	un contrôle ComboBox nommé ComboBox1.

•	un contrôle MultiPage nommé MultiPage1.

Private Sub CommandButton1_Click()

    TextBox1.Text = ActiveControl.Tag

End Sub

Private Sub UserForm_Initialize()

    TextBox1.Locked = True

    TextBox1.Tag = "Zone d’affichage des " & _

                   "propriétés Tag."

    TextBox1.AutoSize = True

    CommandButton1.Caption = "Affichez la " & _

          "propriété Tag du contrôle courant."

    CommandButton1.AutoSize = True

    CommandButton1.WordWrap = True

    CommandButton1.TakeFocusOnClick = False

    CommandButton1.Tag = "Affiche la propriété Tag" _

                 & "du contrôle ayant le focus."

    ComboBox1.Style = fmStyleDropDownList

    ComboBox1.Tag = "La propriété Style du " _

  & "contrôle ComboBox est celle d’un ListBox."

    ScrollBar1.Max = 100

    ScrollBar1.Min = -273

    ScrollBar1.Tag = "Max = " & ScrollBar1.Max & " , Min = " & ScrollBar1.Min

    MultiPage1.Pages.Add

    MultiPage1.Pages.Add

    MultiPage1.Tag = "Ce contrôle MultiPage a " & MultiPage1.Pages.Count & " pages."

End Sub


TopIndex, propriété, exemple

L’exemple suivant identifie l’élément affiché en haut du contrôle ListBox et l’élément ayant le focus dans le contrôle ListBox. Il utilise la propriété TopIndex pour identifier l’élément affiché en haut du contrôle ListBox, et la propriété ListIndex pour identifier l’élément ayant le focus. L’utilisateur sélectionne un élément du contrôle . Les valeurs affichées de TopIndex et ListIndex sont mises à jour lorsque l’utilisateur sélectionne un élément ou lorsqu’il clique sur le contrôle CommandButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	un contrôle TextBox nommé TextBox1,

•	un contrôle Label nommé Label2,

•	un contrôle TextBox nommé TextBox2,

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle ListBox nommé ListBox1.

Private Sub CommandButton1_Click()

    ListBox1.TopIndex = ListBox1.ListIndex

    TextBox1.Text = ListBox1.TopIndex

    TextBox2.Text = ListBox1.ListIndex

End Sub

Private Sub ListBox1_Change()

    TextBox1.Text = ListBox1.TopIndex

    TextBox2.Text = ListBox1.ListIndex

End Sub

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 0 To 24

        ListBox1.AddItem "Choix " & (i + 1)

    Next i

    ListBox1.Height = 66

    CommandButton1.Caption = "Déplacer en tête de liste"

    CommandButton1.AutoSize = True

    CommandButton1.TakeFocusOnClick = False

    Label1.Caption = "Index de l’élément"

    TextBox1.Text = ListBox1.TopIndex

    Label2. Caption = "Index de l’élément courant"

    Label2.AutoSize = True

    Label2.WordWrap = False

    TextBox2.Text = ListBox1.ListIndex

End Sub


TripleState, propriété, exemple

L’exemple suivant utilise la propriété TripleState pour que Null soit une valeur correcte d’un contrôle CheckBox ou ToggleButton. L’utilisateur contrôle la valeur de la propriété TripleState grâce à ToggleButton2. L’utilisateur peut définir la valeur d’un contrôle CheckBox ou ToggleButton en fonction de la valeur de la propriété TripleState.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CheckBox nommé CheckBox1.

•	un contrôle ToggleButton nommé ToggleButton1.

•	un contrôle ToggleButton nommé ToggleButton2.

Private Sub UserForm_Initialize()

    CheckBox1.Caption = "La valeur est True"

    CheckBox1.Value = True

    CheckBox1.TripleState = False

    ToggleButton1.Caption = "La valeur est True"

    ToggleButton1.Value = True

    ToggleButton1.TripleState = False

    ToggleButton2.Value = False

    ToggleButton2.Caption = "Propriété TripleState" _

                         &  " désactivée"

End Sub

Private Sub ToggleButton2_Click()

    If ToggleButton2.Value = True Then

        ToggleButton2.Caption = "Propriété" _

              & " TripleState activée"

        CheckBox1.TripleState = True

        ToggleButton1.TripleState = True

    Else

        ToggleButton2.Caption = "Propriété Triple" _

               & " State désactivée"

        CheckBox1.TripleState = False

        ToggleButton1.TripleState = False

    End If

End Sub

Private Sub CheckBox1_Change()

    If IsNull(CheckBox1.Value) Then

        CheckBox1.Caption = "La valeur est Null"

    ElseIf CheckBox1.Value = False Then

        CheckBox1.Caption = "La valeur est False"

    ElseIf CheckBox1.Value = True Then

        CheckBox1.Caption = "La valeur est True"

    End If

End Sub

Private Sub ToggleButton1_Change()

    If IsNull(ToggleButton1.Value) Then

        ToggleButton1.Caption = "La valeur est Null"

    ElseIf ToggleButton1.Value = False Then

        ToggleButton1.Caption = "La valeur est False"

    ElseIf ToggleButton1.Value = True Then

        ToggleButton1.Caption = "La valeur est True"

    End If

End Sub


Value, propriété, exemple

L’exemple suivant illustre les valeurs que les différents types de contrôles peuvent prendre en affichant la propriété Value d’un contrôle sélectionné. L’utilisateur sélectionne un contrôle soit avec la touche TAB, soit en cliquant sur le contrôle. En fonction du type de contrôle, l’utilisateur peut aussi spécifier la valeur du contrôle en la tapant dans la zone de texte du contrôle, en cliquant une ou plusieurs fois sur le contrôle, ou en sélectionnant un élément, une page ou un onglet du contrôle. L’utilisateur peut afficher la valeur du contrôle sélectionné en cliquant sur le contrôle CommandButton correctement libellé.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle TextBox nommé TextBox1,

•	un contrôle CheckBox nommé CheckBox1,

•	un contrôle ComboBox nommé ComboBox1,

•	un contrôle CommandButton nommé CommandButton2,

•	un contrôle ListBox nommé ListBox1,

•	un contrôle MultiPage nommé MultiPage1,

•	deux contrôles OptionButton nommés OptionButton1 et OptionButton2,

•	un contrôle ScrollBar nommé ScrollBar1,

•	un contrôle SpinButton nommé SpinButton1,

•	un contrôle TabStrip nommé TabStrip1,

•	un contrôle TextBox nommé TextBox2,

•	un contrôle ToggleButton nommé ToggleButton1.

Dim i As Integer

Private Sub CommandButton1_Click()

    TextBox1.Text = "La valeur de " & ActiveControl.Name & " est " & ActiveControl.Value

End Sub

Private Sub UserForm_Initialize()

    CommandButton1.Caption = "Obtenir la valeur du" _

                           & "contrôle courant"

    CommandButton1.AutoSize = True

    CommandButton1.TakeFocusOnClick = False

    CommandButton1.TabStop = False

    TextBox1.AutoSize = True

    For i = 0 To 10

        ComboBox1.AddItem "Choix " & (i + 1)

        ListBox1.AddItem "Sélection " & (100 - i)

    Next i

    CheckBox1.TripleState = True

    ToggleButton1.TripleState = True

    TextBox2.Text = "Entrez votre texte ici."

End Sub


KeyPress, événement, exemple

L’exemple suivant utilise l’événement KeyPress pour copier la frappe de touches d’un contrôle TextBox à un autre. L’utilisateur tape dans le contrôle TextBox adéquatement libellé.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles TextBox nommés TextBox1 et TextBox2.

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

    TextBox2.Text = TextBox2.Text & Chr(KeyAscii)

    'Pour détecter des combinaisons de touches ( utilisant MAJ, CTRL, ALT, et d'autres touches),

    'ou les touches TAB ou ENTRÉE, utilisez les événements KeyDown et KeyUp .

End Sub

Private Sub UserForm_Initialize()

    Move 0, 0, 570, 380

    TextBox1.Move 30, 40, 220, 160

    TextBox1.MultiLine = True

    TextBox1.WordWrap = True

    TextBox1.Text = "Tapez le texte ici."

    TextBox1.EnterKeyBehavior = True

    TextBox2.Move 298, 40, 220, 160

    TextBox2.MultiLine = True

    TextBox2.WordWrap = True

    TextBox2.Text = "Le texte tapé est copié ici."

    TextBox2.Locked = True

 End Sub


Zoom, événement, exemple

L’exemple suivant utilise l’événement Zoom pour évaluer la nouvelle valeur de la propriété Zoom et ajoute des barres de défilement à la feuille si nécessaire. Il utilise un contrôle Label pour afficher la valeur en cours. L’utilisateur spécifie la taille de la feuille avec le contrôle SpinButton, puis clique sur le contrôle CommandButton pour définir la valeur de la propriété Zoom.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1.

•	un contrôle SpinButton nommé SpinButton1.

•	un contrôle CommandButton nommé CommandButton1.

•	d’autres contrôles situés près des bords de la feuille.

Private Sub CommandButton1_Click()

    Zoom = SpinButton1.Value

End Sub

Private Sub SpinButton1_SpinDown()

    Label1.Caption = SpinButton1.Value

End Sub

Private Sub SpinButton1_SpinUp()

    Label1.Caption = SpinButton1.Value

End Sub

Private Sub UserForm_Initialize()

    SpinButton1.Min = 10

    SpinButton1.Max = 400

    SpinButton1.Value = 100

    Label1.Caption = SpinButton1.Value

    CommandButton1.Caption = "Zoom !"

End Sub

Private Sub UserForm_Zoom(Percent As Integer)

    Dim MyResult As Double

    If Percent > 99 Then

        ScrollBars = fmScrollBarsBoth

        ScrollLeft = 0

        ScrollTop = 0

        MyResult = Width * Percent / 100

        ScrollWidth = MyResult

        MyResult = Height * Percent / 100

        ScrollHeight = MyResult

    Else

        ScrollBars = fmScrollBarsNone

        ScrollLeft = 0

        ScrollTop = 0

    End If

End Sub


Max, Min et MaxLength, propriétés, exemple

L’exemple suivant illustre l’utilisation des propriétés Max et Min avec un contrôle ScrollBar indépendant. L’utilisateur peut définir tout entier compris entre –1 000 et 1 000 comme valeur des propriétés Max et Min. L’exemple utilise également la propriété MaxLength pour limiter le nombre de caractères entrés pour les valeurs Max et Min.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1 et un contrôle TextBox nommé TextBox1.

•	un contrôle Label nommé Label2 and un contrôle TextBox nommé TextBox2.

•	un contrôle ScrollBar nommé ScrollBar1.

•	un contrôle Label nommé Label3.

Dim TempNum As Integer

Private Sub UserForm_Initialize()

    Label1.Caption = "Min de -1000 à 1000"

    ScrollBar1.Min = -1000

    TextBox1.Text = ScrollBar1.Min

    TextBox1.MaxLength = 5

    Label2.Caption = "Max de -1000 à 1000"

    ScrollBar1.Max = 1000

    TextBox2.Text = ScrollBar1.Max

    TextBox2.MaxLength = 5

    ScrollBar1.SmallChange = 1

    ScrollBar1.LargeChange = 100

    ScrollBar1.Value = 0

    Label3.Caption = ScrollBar1.Value

End Sub

Private Sub TextBox1_Change()

    If IsNumeric(TextBox1.Text) Then

        TempNum = CInt(TextBox1.Text)

        If TempNum >= -1000 And TempNum <= 1000 Then

            ScrollBar1.Min = TempNum

        Else

            TextBox1.Text = ScrollBar1.Min

        End If

    Else

        TextBox1.Text = ScrollBar1.Min

    End If

End Sub

Private Sub TextBox2_Change()

    If IsNumeric(TextBox2.Text) Then

        TempNum = CInt(TextBox2.Text)

        If TempNum >= -1000 And TempNum <= 1000 Then

            ScrollBar1.Max = TempNum

        Else

            TextBox2.Text = ScrollBar1.Max

        End If

    Else

        TextBox2.Text = ScrollBar1.Max

    End If

End Sub

Private Sub ScrollBar1_Change()

Label3.Caption = ScrollBar1.Value

End Sub


LargeChange, SmallChange, propriétés, exemple

L’exemple suivant illustre l’utilisation des propriétés LargeChange et SmallChange avec un contrôle ScrollBar indépendant. L’utilisateur peut définir tout entier compris entre 0 et 100 comme valeur des propriétés LargeChange et SmallChange. L’exemple utilise également la propriété MaxLength pour limiter le nombre de caractères entrés pour les valeurs de LargeChange et SmallChange.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1 et un contrôle TextBox nommé TextBox1.

•	un contrôle Label nommé Label2 et un contrôle TextBox nommé TextBox2.

•	un contrôle ScrollBar nommé ScrollBar1.

•	un contrôle Label nommé Label3.

Dim TempNum As Integer

Private Sub ScrollBar1_Change()

    Label3.Caption = ScrollBar1.Value

End Sub

Private Sub TextBox1_Change()

    If IsNumeric(TextBox1.Text) Then

        TempNum = CInt(TextBox1.Text)

        If TempNum >= 0 And TempNum <= 100 Then

            ScrollBar1.SmallChange = TempNum

        Else

            TextBox1.Text = ScrollBar1.SmallChange

        End If

    Else

        TextBox1.Text = ScrollBar1.SmallChange

    End If

End Sub

Private Sub TextBox2_Change()

    If IsNumeric(TextBox2.Text) Then

        TempNum = CInt(TextBox2.Text)

        If TempNum >= 0 And TempNum <= 100 Then

            ScrollBar1.LargeChange = TempNum

        Else

            TextBox2.Text = ScrollBar1.LargeChange

        End If

    Else

        TextBox2.Text = ScrollBar1.LargeChange

    End If

End Sub

Private Sub UserForm_Initialize()

    ScrollBar1.Min = -1000

    ScrollBar1.Max = 1000

    Label1.Caption = "SmallChange de 0 à 100"

    ScrollBar1.SmallChange = 1

    TextBox1.Text = ScrollBar1.SmallChange

    TextBox1.MaxLength = 3

    Label2.Caption = "LargeChange de 0 à 100"

    ScrollBar1.LargeChange = 100

    TextBox2.Text = ScrollBar1.LargeChange

    TextBox2.MaxLength = 3

    ScrollBar1.Value = 0

    Label3.Caption = ScrollBar1.Value

End Sub


ScrollBars, KeepScrollBarsVisible, propriétés, exemple

L’exemple suivant utilise les propriétés ScrollBars et KeepScrollBarsVisible pour ajouter des barres de défilement à une page de contrôle MultiPage et à un contrôle Frame. L’utilisateur sélectionne un bouton d’option qui attribue une valeur à la propriété KeepScrollBarsVisible.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle MultiPage nommé MultiPage1.

•	un contrôle Frame nommé Frame1.

•	quatre contrôles OptionButton nommés OptionButton1 à OptionButton4.

Private Sub UserForm_Initialize()

    MultiPage1.Pages(0).ScrollBars = fmScrollBarsBoth

    MultiPage1.Pages(0).KeepScrollBarsVisible = fmScrollBarsNone

    Frame1.ScrollBars = fmScrollBarsBoth

    Frame1.KeepScrollBarsVisible = fmScrollBarsNone

    OptionButton1.Caption = "Aucune barre de " & _

                            "défilement"

    OptionButton1.Value = True

    OptionButton2.Caption = "Barres de défilement " _

                            & "horizontales"

    OptionButton3.Caption = "Barres de défilement " _

                        &    "verticales"

    OptionButton4.Caption = "Les deux types de " _

                        &    "barres de défilement"

End Sub

Private Sub OptionButton1_Click()

    MultiPage1.Pages(0).KeepScrollBarsVisible = fmScrollBarsNone

    Frame1.KeepScrollBarsVisible = fmScrollBarsNone

End Sub

Private Sub OptionButton2_Click()

    MultiPage1.Pages(0).KeepScrollBarsVisible = fmScrollBarsHorizontal

    Frame1.KeepScrollBarsVisible = fmScrollBarsHorizontal

End Sub

Private Sub OptionButton3_Click()

    MultiPage1.Pages(0).KeepScrollBarsVisible = fmScrollBarsVertical

    Frame1.KeepScrollBarsVisible = fmScrollBarsVertical

End Sub

Private Sub OptionButton4_Click()

    MultiPage1.Pages(0).KeepScrollBarsVisible = fmScrollBarsBoth

    Frame1.KeepScrollBarsVisible = fmScrollBarsBoth

End Sub


ScrollHeight, ScrollLeft, ScrollTop et ScrollWidth, propriétés, exemple

L’exemple suivant utilise une page d’un contrôle MultiPage comme une zone de défilement. Grâce aux barres de défilement du contrôle Page2 du contrôle MultiPage, l’utilisateur peut atteindre des parties de la page qui au départ ne sont pas affichées.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient  un contrôle MultiPage nommé MultiPage1, et que chaque page de ce contrôle contient au moins un contrôle.

Note   Chaque page d’un contrôle MultiPage est unique. Page1 n’a pas de barre de défilement. Page2 a une barre de défilement horizontale et une verticale.

Private Sub UserForm_Initialize()

    MultiPage1.Pages(1).ScrollBars = fmScrollBarsBoth

    MultiPage1.Pages(1).KeepScrollBarsVisible = fmScrollBarsNone

    MultiPage1.Pages(1).ScrollHeight = 2 * MultiPage1.Height

    MultiPage1.Pages(1).ScrollWidth = 2 * MultiPage1.Width

    'Set ScrollHeight, ScrollWidth before setting ScrollLeft, ScrollTop

    MultiPage1.Pages(1).ScrollLeft = MultiPage1.Width / 2

    MultiPage1.Pages(1).ScrollTop = MultiPage1.Height / 2

End Sub


InsideHeight, InsideWidth, propriétés, exemple

L’exemple suivant utilise les propriétés InsideHeight et InsideWidth pour redimensionner un contrôle CommandButton. L’utilisateur clique sur le contrôle CommandButton le redimensionner.

Note   InsideHeight et InsideWidth sont des propriétés en lecture seule.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1.

Dim Resize As Single

Private Sub UserForm_Initialize()

    Resize = 0.75

    CommandButton1.Caption = "Redimensionne " & _

                             "le bouton"

End Sub

Private Sub CommandButton1_Click()

    CommandButton1.Move 10, 10, UserForm1.InsideWidth * Resize, UserForm1.InsideHeight * Resize

    CommandButton1.Caption = "Bouton redimensionné" _

              & "avec InsideHeight et InsideWidth!"

End Sub


ListRows, propriétés, exemple

L’exemple suivant utilise un contrôle SpinButton pour définir le nombre de lignes de la liste déroulante d’un contrôle ComboBox. L’utilisateur change la valeur de SpinButton, puis clique sur la flèche de déroulement du contrôle ComboBox pour afficher la liste.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ComboBox nommé ComboBox1.

•	un contrôle SpinButton nommé SpinButton1.

•	un contrôle Label nommé Label1.

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 1 To 20

        ComboBox1.AddItem "Choix " & _

             (ComboBox1.ListCount + 1)

    Next i

    SpinButton1.Min = 0

    SpinButton1.Max = 12

    SpinButton1.Value = ComboBox1.ListRows

    Label1.Caption = "ListRows = " & SpinButton1.Value

End Sub

Private Sub SpinButton1_Change()

    ComboBox1.ListRows = SpinButton1.Value

    Label1.Caption = "ListRows = " & SpinButton1.Value

End Sub


ListWidth, propriété, exemple

L’exemple suivant utilise un contrôle SpinButton pour définir la largeur de la liste déroulante d’un contrôle ComboBox. L’utilisateur modifie la valeur du contrôle SpinButton, puis clique sur la flèche de déroulement du contrôle ComboBox pour afficher la liste.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ComboBox nommé ComboBox1.

•	un contrôle SpinButton nommé SpinButton1.

•	un contrôle Label nommé Label1.

Private Sub SpinButton1_Change()

    ComboBox1.ListWidth = SpinButton1.Value

    Label1.Caption = "ListWidth = " & SpinButton1.Value

End Sub

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 1 To 20

        ComboBox1.AddItem "Choix " & _

             (ComboBox1.ListCount + 1)

    Next i

    SpinButton1.Min = 0

    SpinButton1.Max = 130

    SpinButton1.Value = Val(ComboBox1.ListWidth)

    SpinButton1.SmallChange = 5

    Label1.Caption = "ListWidth = " & _

                      SpinButton1.Value

End Sub


ListStyle, MultiSelect, propriétés, exemple

L’exemple suivant utilise les propriétés ListStyle et MultiSelect pour définir l’aspect d’un contrôle ListBox. L’utilisateur définit une valeur pour la propriété ListStyle avec le contrôle ToggleButton, puis sélectionne un contrôle OptionButton pour l’une des valeurs MultiSelect. L’aspect du contrôle ListBox change alors en fonction des valeurs, de même que le comportement de sélection dans le contrôle ListBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ListBox nommé ListBox1,

•	un contrôle Label nommés Label1,

•	Trois contrôles OptionButton nommés OptionButton1 à OptionButton3.

•	un contrôle ToggleButton nommé ToggleButton1.

Private Sub UserForm_Initialize()

    Dim i As Integer

    For i = 1 To 8

        ListBox1.AddItem "Choix" & (ListBox1.ListCount + 1)

    Next i

    Label1.Caption = "Choix MultiSelect"

    Label1.AutoSize = True

    ListBox1.MultiSelect = fmMultiSelectSingle

    OptionButton1.Caption = "Entrée simple"

    OptionButton1.Value = True

    OptionButton2.Caption = "Entrées multiples"

    OptionButton3.Caption = "Entrées étendues"

    ToggleButton1.Caption = "ListStyle - simple"

    ToggleButton1.Value = True

    ToggleButton1.Width = 90

    ToggleButton1.Height = 30

End Sub

Private Sub OptionButton1_Click()

    ListBox1.MultiSelect = fmMultiSelectSingle

End Sub

Private Sub OptionButton2_Click()

    ListBox1.MultiSelect = fmMultiSelectMulti

End Sub

Private Sub OptionButton3_Click()

    ListBox1.MultiSelect = fmMultiSelectExtended

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

        ToggleButton1.Caption = "ListStyle simple"

        ListBox1.ListStyle = fmListStylePlain

    Else

        ToggleButton1.Caption = "OptionButton ou CheckBox"

        ListBox1.ListStyle = fmListStyleOption

    End If

End Sub


MouseIcon, MousePointer, propriétés, exemple

L’exemple suivant illustre comment spécifier un pointeur de souris spécifique à un contrôle donné ou à une situation. Vous pouvez attribuer l’un des nombreux pointeurs disponibles à l’aide de la propriété MousePointer, ou associer une icône personnalisée à l’aide des propriétés MousePointer et MouseIcon.

L’exemple fonctionne comme suit :

•	Sélectionnez un pointeur de souris dans le contrôle ListBox pour modifier le pointeur associé au premier contrôle CommandButton.

•	Cliquez sur le premier contrôle CommandButton pour attribuer son pointeur au deuxième contrôle CommandButton.

•	Cliquez sur le deuxième contrôle CommandButton pour remplacer son pointeur de souris par une icône personnalisée.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2,

•	un contrôle ListBox nommé ListBox1.

Note   Cet exemple utilise deux fichiers d’icônes (identifiés par l’extension de nom de fichier .ico) chargés par la fonction LoadPicture. Vous devez modifier chaque appel de la fonction LoadPicture pour spécifier un fichier d’icônes résidant sur votre système.

Private Sub ListBox1_Click()

    If IsNull(ListBox1.Value) = False Then

        CommandButton1.MousePointer = ListBox1.Value

        If CommandButton1.MousePointer = fmMousePointerCustom Then

            CommandButton1.MouseIcon = LoadPicture("c:\msvc20\cdk32\samples\circ1\bix.ico")

        End If

    End If

End Sub

Private Sub CommandButton1_Click()

    CommandButton2.MousePointer = CommandButton1.MousePointer

    If CommandButton2.MousePointer = fmMousePointerCustom Then

        CommandButton2.MouseIcon = CommandButton1.MouseIcon

    End If

End Sub

Private Sub CommandButton2_Click()

    CommandButton2.MousePointer = fmMousePointerCustom

    CommandButton2.MouseIcon = LoadPicture("c:\msvc20\cdk32\samples\push\push.ico")

End Sub

Private Sub UserForm_Initialize()

    'Load ListBox with MousePointer choices

    ListBox1.ColumnCount = 2

    ListBox1.AddItem "fmMousePointerDefault"

    ListBox1.List(0, 1) = fmMousePointerDefault

    ListBox1.AddItem "fmMousePointerArrow"

    ListBox1.List(1, 1) = fmMousePointerArrow

    ListBox1.AddItem "fmMousePointerCross"

    ListBox1.List(2, 1) = fmMousePointerCross

    ListBox1.AddItem "fmMousePointerIBeam"

    ListBox1.List(3, 1) = fmMousePointerIBeam

    ListBox1.AddItem "fmMousePointerSizeNESW"

    ListBox1.List(4, 1) = fmMousePointerSizeNESW

    ListBox1.AddItem "fmMousePointerSizeNS"

    ListBox1.List(5, 1) = fmMousePointerSizeNS

    ListBox1.AddItem "fmMousePointerSizeNWSE"

    ListBox1.List(6, 1) = fmMousePointerSizeNWSE

    ListBox1.AddItem "fmMousePointerSizeWE"

    ListBox1.List(7, 1) = fmMousePointerSizeWE

    ListBox1.AddItem "fmMousePointerUpArrow"

    ListBox1.List(8, 1) = fmMousePointerUpArrow

    ListBox1.AddItem "fmMousePointerHourglass"

    ListBox1.List(9, 1) = fmMousePointerHourGlass

    ListBox1.AddItem "fmMousePointerNoDrop"

    ListBox1.List(10, 1) = fmMousePointerNoDrop

    ListBox1.AddItem "fmMousePointerAppStarting"

    ListBox1.List(11, 1) = fmMousePointerAppStarting

    ListBox1.AddItem "fmMousePointerHelp"

    ListBox1.List(12, 1) = fmMousePointerHelp

    ListBox1.AddItem "fmMousePointerSizeAll"

    ListBox1.List(13, 1) = fmMousePointerSizeAll

    ListBox1.AddItem "fmMousePointerCustom"

    ListBox1.List(14, 1) = fmMousePointerCustom

    ListBox1.BoundColumn = 2

    ListBox1.Value = fmMousePointerDefault

    MsgBox "ListBox1.Value =" & ListBox1.Value & "."

    CommandButton1.MousePointer = ListBox1.Value

End Sub


EnterKeyBehavior, propriété, exemple

L’exemple suivant utilise la propriété EnterKeyBehavior pour contrôler l’effet de la touche ENTRÉE dans un contrôle TextBox. Dans cet exemple, l’utilisateur peut spécifier un contrôle TextBox d’une ou de plusieurs lignes.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	deux contrôles ToggleButton nommés ToggleButton1 et ToggleButton2.

Private Sub UserForm_Initialize()

    TextBox1.EnterKeyBehavior = True

    ToggleButton1.Caption = "La valeur de la " _

        & "propriété EnterKeyBehavior est True"

    ToggleButton1.Width = 70

    ToggleButton1.Value = True

    TextBox1.MultiLine = True

    ToggleButton2.Caption = "La valeur de  " & _

                            "MultiLine  est True"

    ToggleButton2.Width = 70

    ToggleButton2.Value = True

    TextBox1.Height = 100

    TextBox1.WordWrap = True

    TextBox1.Text = "Tapez votre texte ici." & _

             " Si la valeur de la propriété " & _

             "EnterKeyBehavior est True," & _

             "appuyez sur Entrée pour " & _

             "commencer une nouvelle ligne " & _

             "Sinon, appuyez sur MAJ+ENTRÉE."

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

        TextBox1.EnterKeyBehavior = True

        ToggleButton1.Caption = "La valeur de la" & _

          " propriété EnterKeyBehavior est True"

    Else

        TextBox1.EnterKeyBehavior = False

        ToggleButton1.Caption = "La valeur de la" & _

              " propriété EnterKeyBehavior est False"

    End If

End Sub

Private Sub ToggleButton2_Click()

    If ToggleButton2.Value = True Then

        TextBox1.MultiLine = True

        ToggleButton2.Caption = "TextBox multiligne"

    Else

        TextBox1.MultiLine = False

        ToggleButton2.Caption = "TextBox d’une ligne"

    End If

End Sub


Index, propriété, exemple

L’exemple suivant utilise la propriété Index pour modifier l’ordre des pages et des tabulations dans les contrôles MultiPage et TabStrip. L’utilisateur choisit le contrôle CommandButton1 pour placer la troisième page et la troisième tabulation au début des contrôles MultiPage et TabStrip. Il choisit le contrôle CommandButton2 pour placer la page et la tabulation sélectionnées à la fin des contrôles MultiPage et TabStrip.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2,

•	un contrôle MultiPage nommé MultiPage1,

•	un contrôle TabStrip nommé TabStrip1.

Dim MyPageOrTab As Object

Private Sub CommandButton1_Click()

'Placez les troisième page et tabulation au début du

'contrôle

    MultiPage1.page3.Index = 0

    TabStrip1.Tab3.Index = 0

End Sub

Private Sub CommandButton2_Click()

'Placez la page et la tabulations sélectionnées à la

'fin du contrôle

    Set MyPageOrObject = MultiPage1.SelectedItem

    MsgBox "MultiPage1.SelectedItem = " & _

           MultiPage1.SelectedItem.Name

    MyPageOrObject.Index = 4

    Set MyPageOrObject = TabStrip1.SelectedItem

    MsgBox "TabStrip1.SelectedItem = " & _

           TabStrip1.SelectedItem.Caption

    MyPageOrObject.Index = 4

End Sub

Private Sub UserForm_Initialize()

    MultiPage1.Width = 200

    MultiPage1.Pages.Add

    MultiPage1.Pages.Add

    MultiPage1.Pages.Add

    TabStrip1.Width = 200

    TabStrip1.Tabs.Add

    TabStrip1.Tabs.Add

    TabStrip1.Tabs.Add

    CommandButton1.Caption = _

       "Placez la troisième page/tabulation au début"

    CommandButton1.Width = 120

    CommandButton2.Caption = _

       "Placez l’élément sélectionné à la fin"

    CommandButton2.Width = 120

 End Sub


Enabled, Locked, propriétés, exemple

L’exemple suivant illustre l’utilisation des propriétés Enabled et Locked et leur complémentarité. Chaque propriété est décrite séparément afin que vous puissiez examiner les valeurs individuelles et combinées. L’exemple contient également un autre contrôle TextBox qui permet de couper et coller les informations entre les deux contrôles TextBox et de vérifier les activités supportées par les valeurs de ces propriétés.

Note   Vous pouvez copier la sélection du Presse-papiers à l’aide des touches CTRL+C, puis la coller à l’aide des touches CTRL+V.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	deux contrôles CheckBox nommés CheckBox1 et CheckBox2,

•	un second contrôle TextBox nommé TextBox2.

Private Sub CheckBox1_Change()

    TextBox2.Text = "TextBox2"

    TextBox1.Enabled = CheckBox1.Value

End Sub

Private Sub CheckBox2_Change()

    TextBox2.Text = "TextBox2"

    TextBox1.Locked = CheckBox2.Value

End Sub

Private Sub UserForm_Initialize()

    TextBox1.Text = "TextBox1"

    TextBox1.Enabled = True

    TextBox1.Locked = False

    CheckBox1.Caption = "Activé"

    CheckBox1.Value = True

    CheckBox2.Caption = "Verrouillé"

    CheckBox2.Value = False

    TextBox2.Text = "TextBox2"

End Sub


Delay, propriété, exemple

L’exemple suivant illustre l’intervalle de temps compris entre les événements Change, SpinUp et SpinDown qui se déclenchent successivement lorsqu’un utilisateur appuie sur le bouton de la souris pour modifier la valeur d’un contrôle SpinButton ou ScrollBar.

Dans cet exemple, l’utilisateur choisit une valeur de délai d’attente, puis clique au début ou à la fin du contrôle SpinButton et maintient le bouton de la souris enfoncé. Les événements SpinUp et SpinDown sont enregistrés dans un contrôle ListBox dès qu’ils se déclenchent.

Pour utiliser cet exemple, copier le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle SpinButton nommé SpinButton1,

•	deux contrôles OptionButton nommés OptionButton1 et OptionButton2,

•	un contrôle ListBox nommé ListBox1.

Dim EventCount As Long

Private Sub ResetControl()

    ListBox1.Clear

    EventCount = 0

    SpinButton1.Value = 5000

End Sub

Private Sub UserForm_Initialize()

    SpinButton1.Min = 0

    SpinButton1.Max = 10000

    ResetControl

    SpinButton1.Delay = 50

    OptionButton1.Caption = _

        "Délai d’attente de 50 millisecondes"

    OptionButton2.Caption = _

        "Délai d’attente de 250 millisecondes"

    OptionButton1.Value = True

End Sub

Private Sub OptionButton1_Click()

    SpinButton1.Delay = 50

    ResetControl

End Sub

Private Sub OptionButton2_Click()

    SpinButton1.Delay = 250

    ResetControl

End Sub

Private Sub SpinButton1_SpinDown()

    EventCount = EventCount + 1

    ListBox1.AddItem EventCount

End Sub

Private Sub SpinButton1_SpinUp()

    EventCount = EventCount + 1

    ListBox1.AddItem EventCount

End Sub


DropButtonStyle, ShowDropButtonWhen, propriétés, exemple

L’exemple suivant indique les différents symboles que vous pouvez utiliser pour une flèche de défilement vers le bas dans un contrôle ComboBox ou TextBox. L’utilisateur choisit un style de flèche de défilement vers le bas dans un contrôle ComboBox. L’exemple contient également une propriété Locked. Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ComboBox nommé ComboBox1,

•	un contrôle Label nommé Label1,

•	un contrôle TextBox nommé TextBox1 placé sous le contrôle Label1.

Private Sub ComboBox1_Click()

    ComboBox1.DropButtonStyle = ComboBox1.Value

    TextBox1.DropButtonStyle = ComboBox1.Value

End Sub

Private Sub UserForm_Initialize()

    ComboBox1.ColumnCount = 2

    ComboBox1.BoundColumn = 2

    ComboBox1.TextColumn = 1

    ComboBox1.AddItem "Bouton vide"

    ComboBox1.List(0, 1) = 0

    ComboBox1.AddItem "Flèche vers le bas"

    ComboBox1.List(1, 1) = 1

    ComboBox1.AddItem "Ellipse"

    ComboBox1.List(2, 1) = 2

    ComboBox1.AddItem "Soulignement"

    ComboBox1.List(3, 1) = 3

    ComboBox1.Value = 0

    TextBox1.Text = "TextBox1"

    TextBox1.ShowDropButtonWhen = fmShowDropButtonWhenAlways

    TextBox1.Locked = True

    Label1.Caption = "DropButton s’applique" & _

                 " aussi à un contrôle TextBox."

    Label1.AutoSize = True

    Label1.WordWrap = False

End Sub


LineCount, TextLength, propriétés, exemple

L’exemple suivant compte les caractères et le nombre de lignes de texte d’un contrôle TextBox, à l’aide des propriétés LineCount et TextLength et de la méthode SetFocus. L’utilisateur peut saisir du texte dans ce contrôle et reprendre les valeurs en cours des propriétés LineCount et TextLength.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	un contrôle CommandButton nommé CommandButton1,

•	deux contrôles Label nommés Label1 et Label2.

'Appuyez sur MAJ+ENTRÉE pour commencer une nouvelle

'ligne dans la zone de texte.

Private Sub CommandButton1_Click()

    'Vous devez d’abord placer le focus sur le

    'contrôle TextBox1 pour obtenir le nombre de

    'lignes

    TextBox1.SetFocus

    Label1.Caption = "LineCount = " & TextBox1.LineCount

    Label2.Caption = "TextLength = " & TextBox1.TextLength

End Sub

Private Sub UserForm_Initialize()

    CommandButton1.WordWrap = True

    CommandButton1.AutoSize = True

    CommandButton1.Caption = _

         "Accédez aux résultats du comptage"

    Label1.Caption = "LineCount = "

    Label2.Caption = "TextLength = "

    TextBox1.MultiLine = True

    TextBox1.WordWrap = True

    TextBox1.Text = "Tapez votre texte ici."

End Sub


Count, propriété, exemple

L’exemple suivant affiche la propriété Count de la collection Controls d’une feuille, ainsi que la propriété Count identifiant le nombre de pages et de tabulations de chaque contrôle MultiPage et TabStrip.

Pour utiliser cet exemple, copiez le code ci-après dans la partie Déclarations d’une feuille, avec les restrictions suivantes :

•	le nom des contrôles MultiPage doit commencer par “MultiPage”,

•	le nom des contrôles TabStrip doit commencer par “TabStrip”.

Note   Vous pouvez ajouter des pages dans un contrôle MultiPage ou des tabulations dans un contrôle TabStrip. Double-cliquez sur le contrôle, puis cliquez le bouton droit de la souris directement sur la zone de tabulation du contrôle et choisissez la commande Nouvelle Page du menu contextuel.

Private Sub UserForm_Initialize()

    Dim MyControl As Control

    MsgBox "UserForm1.Controls.Count = " & Controls.Count

    For Each MyControl In Controls

        If (MyControl.Name Like "MultiPage*") Then

            MsgBox MyControl.Name & ".Pages.Count = " & MyControl.Pages.Count

        ElseIf (MyControl.Name Like "TabStrip*") Then

            MsgBox MyControl.Name & ".Tabs.Count = " & MyControl.Tabs.Count

        End If

    Next

End Sub


Alignment, propriété, exemple

L’exemple suivant illustre l’utilisation de la propriété Alignment avec plusieurs contrôles OptionButton, où l’utilisateur peut modifier l’alignement en cliquant sur un contrôle ToggleButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	quatre contrôles OptionButton nommés OptionButton1 et OptionButton2,

•	un contrôle ToggleButton nommé ToggleButton1.

Private Sub UserForm_Initialize()

    OptionButton1.Alignment = fmAlignmentLeft

    OptionButton2.Alignment = fmAlignmentLeft

    OptionButton1.Caption = _

        "Alignez avec la propriété AutoSize"

    OptionButton2.Caption = "Choix 2"

    OptionButton1.AutoSize = True

    OptionButton2.AutoSize = True

    ToggleButton1.Caption = "Alignez à gauche"

    ToggleButton1.WordWrap = True

    ToggleButton1.Value = True

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

        ToggleButton1.Caption = "Alignez à gauche"

        OptionButton1.Alignment = fmAlignmentLeft

        OptionButton2.Alignment = fmAlignmentLeft

    Else

        ToggleButton1.Caption = "Alignez à droite"

        OptionButton1.Alignment = fmAlignmentRight

        OptionButton2.Alignment = fmAlignmentRight

    End If

End Sub


ActiveControl, propriété, exemple

L’exemple suivant utilise la propriété ActiveControl d’une sous-routine qui effectue le suivi des contrôles consultés par l’utilisateur. Pour chaque contrôle, le contrôle Event appelle la sous-routine TraceFocus pour identifier le contrôle qui a le focus.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ScrollBar nommé ScrollBar1,

•	un contrôle ListBox nommé ListBox1,

•	deux contrôles OptionButton nommés OptionButton1 et OptionButton2,

•	un contrôle Frame nommé Frame1.

Dim MyControl As Control

Private Sub TraceFocus()

    ListBox1.AddItem ActiveControl.Name

    ListBox1.List(ListBox1.ListCount - 1, 1) = ActiveControl.TabIndex

End Sub

Private Sub UserForm_Initialize()

    ListBox1.ColumnCount = 2

    ListBox1.AddItem "Contrôles consultés"

    ListBox1.List(0, 1) = "Index de contrôle"

End Sub

Private Sub Frame1_Enter()

    TraceFocus

End Sub

Private Sub ListBox1_Click()

    TraceFocus

End Sub

Private Sub OptionButton1_Enter()

    TraceFocus

End Sub

Private Sub OptionButton2_Enter()

    TraceFocus

End Sub

Private Sub ScrollBar1_Enter()

    TraceFocus

End Sub


DropDown, propriété, exemple

L’exemple suivant utilise la méthode DropDown pour afficher une liste dans un contrôle ComboBox. L’utilisateur peut afficher la liste d’un contrôle ComboBox en cliquant sur le contrôle CommandButton.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ComboBox nommé ComboBox1,

•	un contrôle CommandButton nommé CommandButton1.

Private Sub CommandButton1_Click()

    ComboBox1.DropDown

End Sub

Private Sub UserForm_Initialize()

    ComboBox1.AddItem "Dinde"

    ComboBox1.AddItem "Poulet"

    ComboBox1.AddItem "Canard"

    ComboBox1.AddItem "Oie"

    ComboBox1.AddItem "Coq"

End Sub


Cut et Paste, méthodes (TextBox, contrôle), exemple

L’exemple suivant utilise les méthodes Cut et Paste pour couper du texte dans un contrôle TextBox et le coller dans un autre contrôle TextBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles TextBox nommés TextBox1 et TextBox2,

•	un contrôle CommandButton nommé CommandButton1.

Private Sub UserForm_Initialize()

    TextBox1.Text = "À partir du contrôle TextBox1!"

    TextBox2.Text = "Bonjour "

    CommandButton1.Caption = "Coupez et collez"

    CommandButton1.AutoSize = True

End Sub

Private Sub CommandButton1_Click()

    TextBox2.SelStart = 0

    TextBox2.SelLength = TextBox2.TextLength

    TextBox2.Cut

    TextBox1.SetFocus

    TextBox1.SelStart = 0

    TextBox1.Paste

    TextBox2.SelStart = 0

End Sub


Cut et Paste, méthodes (Page, objet), exemple

L’exemple suivant utilise les méthodes Add, Cut et Paste pour couper et coller un contrôle à partir d’un objet Page d’un contrôle MultiPage. Le contrôle impliqué dans l’opération couper-coller est dynamiquement ajouté à la feuille.

Cet exemple suppose que l’utilisateur ajoutera, puis coupera-collera le nouveau contrôle.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	trois contrôles CommandButton nommés CommandButton1 à CommandButton3,

•	un contrôle MultiPage nommé MultiPage1.

Dim MyTextBox As Control

Private Sub CommandButton1_Click()

    Set MyTextBox = MultiPage1.Pages(MultiPage1.Value).Controls.Add("Forms.TextBox.1", "MyTextBox", Visible)

    CommandButton2.Enabled = True

    CommandButton1.Enabled = False

End Sub

Private Sub CommandButton2_Click()

    MultiPage1.Pages(MultiPage1.Value).Controls.Cut

    CommandButton3.Enabled = True

    CommandButton2.Enabled = False

End Sub

Private Sub CommandButton3_Click()

    Dim MyPage As Object

    Set MyPage = MultiPage1.Pages.Item(MultiPage1.Value)

    MyPage.Paste

    CommandButton3.Enabled = False

End Sub

Private Sub UserForm_Initialize()

    CommandButton1.Caption = "Ajoutez"

    CommandButton2.Caption = "Coupez"

    CommandButton3.Caption = "Collez"

    CommandButton1.Enabled = True

    CommandButton2.Enabled = False

    CommandButton3.Enabled = False

End Sub


Name, propriétés, exemple
Name, propriété,exemple

L’exemple suivant affiche la propriété Name de chaque contrôle d’une feuille. Il utilise la collection Controls pour passer dans tous les contrôles placés directement dans l’objet Userform.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle CommandButton nommé CommandButton1 et plusieurs autres contrôles.

Private Sub CommandButton1_Click()

    Dim MyControl As Control

    For Each MyControl In Controls

        MsgBox "MyControl.Name = " & MyControl.Name

    Next

End Sub


Accès à un onglet, exemple

L’exemple suivant accède de plusieurs façons à un onglet d’un contrôle TabStrip à l’aide :

•	de la collection Tabs et d’un index numérique,

•	de la collection Tabs et d’un index de chaîne,

•	de la collection Tabs et de la méthode Item,

•	du nom d’un contrôle Tab individuel,

•	de la propriété SelectedItem.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle TabStrip nommé TabStrip1.

Private Sub UserForm_Initialize()

    Dim TabName As String

    For i = 0 To TabStrip1.Count - 1

        'Utilisation d’un index

        '(numérique ou de chaîne)

        MsgBox "TabStrip1.Tabs(i).Caption = " & TabStrip1.Tabs(i).Caption

        MsgBox "TabStrip1.Tabs.Item(i).Caption = " & TabStrip1.Tabs.Item(i).Caption

        TabName = TabStrip1.Tabs(i).Name

        MsgBox "TabName = " & TabName

        MsgBox "TabStrip1.Tabs(TabName).Caption = " & TabStrip1.Tabs(TabName).Caption

        MsgBox "TabStrip1.Tabs.Item(TabName).Caption = " & TabStrip1.Tabs.Item(TabName).Caption

        'Utilisez un objet Tab sans référence à la

        'collection Tabs

        If i = 0 Then

            MsgBox "TabStrip1.Tab1. Caption = " & TabStrip1.Tab1.Caption

        ElseIf i = 1 Then

            MsgBox "TabStrip1.Tab2. Caption = " & TabStrip1.Tab2.Caption

        EndIf

        'Utilisez la propriété SelectedItem

        TabStrip1.Value = i

        MsgBox " TabStrip1.SelectedItem.Caption = " & TabStrip1.SelectedItem.Caption

    Next i

End Sub


Zoom, propriété, exemple

L’exemple suivant utilise la propriété Zoom pour rétrécir ou élargir les informations affichées dans une feuille, un objet Page ou un contrôle Frame. Il comprend un contrôle Frame, un contrôle TextBox dans le contrôle Frame et un contrôle ScrollBar. Le facteur d’agrandissement du contrôle Frame est modifié par la propriété Zoom. L’utilisateur peut définir la valeur de cette propriété à l’aide du contrôle ScrollBar, et le contrôle TextBox montre les résultats du zoom.

L’exemple utilise également les propriétés Max et Min pour identifier la plage des valeurs acceptables du contrôle ScrollBar.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	un contrôle ScrollBar nommé ScrollBar1,

•	un second contrôle Label nommé Label2,

•	un contrôle Frame nommé Frame1,

•	un contrôle TextBox nommé TextBox1, placé dans le contrôle Frame1.

Private Sub UserForm_Initialize()

    ScrollBar1.Max = 400

    ScrollBar1.Min = 10

    ScrollBar1.Value = 100

    Label1.Caption = _

          "10  -----Pourcentage" & _

          " de la taille initiale---- 400"

    Label2.Caption = ScrollBar1.Value

    Frame1.TextBox1.Text = "Tapez votre texte ici."

    Frame1.TextBox1.MultiLine = True

    Frame1.TextBox1.WordWrap = True

    Frame1.Zoom = ScrollBar1.Value

End Sub

Private Sub ScrollBar1_Change()

    Frame1.Zoom = ScrollBar1.Value

    Label2.Caption = ScrollBar1.Value

End Sub


TextColumn, exemple de propriété
TextColumn, propriété, exemple

L’exemple suivant utilise la propriété TextColumn pour identifier la colonne de données dans un contrôle ListBox qui fournit les données à sa propriété Text. Il définit la troisième colonne du contrôle ListBox comme colonne de texte. Lorsque vous sélectionnez une entrée du contrôle ListBox, la valeur de la propriété TextColumn s’affiche dans le contrôle Label.

L’exemple indique également comment charger un contrôle ListBox multicolonne à l’aide de la méthode AddItem et de la propriété List.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ListBox nommé ListBox1,

•	un contrôle TextBox nommé TextBox1.

Private Sub UserForm_Initialize()

ListBox1.ColumnCount = 3

ListBox1.AddItem "Ligne 1, col. 1"

ListBox1.List(0, 1) = "Ligne 1, col. 2"

ListBox1.List(0, 2) = "Ligne 1, col. 3"

ListBox1.AddItem "Ligne 2, col. 1"

ListBox1.List(1, 1) = "Ligne 2, col. 2"

ListBox1.List(1, 2) = "Ligne 2, col. 3"

ListBox1.AddItem "Ligne 3, col. 1"

ListBox1.List(2, 1) = "Ligne 3, col. 2"

ListBox1.List(2, 2) = "Ligne 3, col. 3"

ListBox1.TextColumn = 3

End Sub

Private Sub ListBox1_Change()

TextBox1.Text = ListBox1.Text

End Sub


PictureSizeMode,propiété, exemple
PictureSizeMode, propriété, exemple

L’exemple suivant utilise la propriété PictureSizeMode pour illustrer trois options d’affichage d’une image : affichage de l’image en l’état, modification de la taille de l’image tout en conservant ses proportions initiales et étirement de l’image pour remplir un espace.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Frame nommé Frame1,

•	un contrôle SpinButton nommé SpinButton1,

•	un contrôle TextBox nommé TextBox1,

•	trois contrôles OptionButton nommés OptionButton1 à OptionButton3.

Note   Cet exemple est une version améliorée de l’exemple de propriété PictureAlignment, car ces deux propriétés sont complémentaires. Les améliorations sont les trois sous-routines de l’événement OptionButton qui permettent de contrôler si l’image est découpée, agrandie par zoom ou étirée.

Dim Alignments(5) As String

Private Sub UserForm_Initialize()

    Alignments(0) = "0 - Haut Gauche"

    Alignments(1) = "1 - Haut Droite"

    Alignments(2) = "2 - Centre"

    Alignments(3) = "3 - Bas Gauche"

    Alignments(4) = "4 - Bas Droite"

    'Spécifiez une image bitmap présente dans votre

    ' système

    Frame1.Picture = LoadPicture("c:\winnt2\ball.bmp")

    SpinButton1.Min = 0

    SpinButton1.Max = 4

    SpinButton1.Value = 0

    TextBox1.Text = Alignments(0)

    Frame1.PictureAlignment = SpinButton1.Value

    OptionButton1.Caption = "Découpez"

    OptionButton1.Value = True

    OptionButton2.Caption = "Étirez"

    OptionButton3.Caption = "Agrandissez"

End Sub

Private Sub OptionButton1_Click()

    If OptionButton1.Value = True Then

        Frame1.PictureSizeMode = fmPictureSizeModeClip

    End If

End Sub

Private Sub OptionButton2_Click()

    If OptionButton2.Value = True Then

        Frame1.PictureSizeMode = fmPictureSizeModeStretch

    End If

End Sub

Private Sub OptionButton3_Click()

    If OptionButton3.Value = True Then

        Frame1.PictureSizeMode = fmPictureSizeModeZoom

    End If

End Sub

Private Sub SpinButton1_Change()

    TextBox1.Text = Alignments(SpinButton1.Value)

    Frame1.PictureAlignment = SpinButton1.Value

End Sub

Private Sub TextBox1_Change()

    Select Case TextBox1.Text

    Case "0"

        TextBox1.Text = Alignments(0)

        Frame1.PictureAlignment = 0

    Case "1"

        TextBox1.Text = Alignments(1)

        Frame1.PictureAlignment = 1

    Case "2"

        TextBox1.Text = Alignments(2)

        Frame1.PictureAlignment = 2

    Case "3"

        TextBox1.Text = Alignments(3)

        Frame1.PictureAlignment = 3

    Case "4"

        TextBox1.Text = Alignments(4)

        Frame1.PictureAlignment = 4

    Case Else

        TextBox1.Text = Alignments(SpinButton1.Value)

        Frame1.PictureAlignment = SpinButton1.Value

    End Select

End Sub


PictureAlignment, propriété, exemple

L’exemple suivant utilise la propriété PictureAlignment pour définir une image d’arrière-plan. Il identifie également les options d’alignement proposées par cette propriété.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Frame nommé Frame1,

•	un contrôle SpinButton nommé SpinButton1,

•	un contrôle TextBox nommé TextBox1.

Dim Alignments(5) As String

Private Sub UserForm_Initialize()

    Alignments(0) = "0 - Haut Gauche"

    Alignments(1) = "1 - Haut Droite"

    Alignments(2) = "2 - Centre"

    Alignments(3) = "3 - Bas Gauche"

    Alignments(4) = "4 - Bas Droite"

    'Spécifiez une image bitmap présente dans votre système

    Frame1.Picture = LoadPicture("c:\winnt2\ball.bmp")

    SpinButton1.Min = 0

    SpinButton1.Max = 4

    SpinButton1.Value = 0

    TextBox1.Text = Alignments(0)

    Frame1.PictureAlignment = SpinButton1.Value

End Sub

Private Sub SpinButton1_Change()

    TextBox1.Text = Alignments(SpinButton1.Value)

    Frame1.PictureAlignment = SpinButton1.Value

End Sub

Private Sub TextBox1_Change()

    Select Case TextBox1.Text

    Case "0"

        TextBox1.Text = Alignments(0)

        Frame1.PictureAlignment = 0

    Case "1"

        TextBox1.Text = Alignments(1)

        Frame1.PictureAlignment = 1

    Case "2"

        TextBox1.Text = Alignments(2)

        Frame1.PictureAlignment = 2

    Case "3"

        TextBox1.Text = Alignments(3)

        Frame1.PictureAlignment = 3

    Case "4"

        TextBox1.Text = Alignments(4)

        Frame1.PictureAlignment = 4

    Case Else

        TextBox1.Text = Alignments(SpinButton1.Value)

        Frame1.PictureAlignment = SpinButton1.Value

    End Select

End Sub


GroupName, propriété, exemple

L’exemple suivant utilise la propriété GroupName pour créer deux groupes de contrôles OptionButton sur la même feuille.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient les contrôles OptionButton nommés OptionButton1 à OptionButton5.

Private Sub UserForm_Initialize()

    OptionButton1.GroupName = "Gadgets"

    OptionButton2.GroupName = "Gadgets"

    OptionButton4.GroupName = "Gadgets"

    OptionButton3.GroupName = "Gadgets-Groupe2"

    OptionButton5.GroupName = "Gadgets-Groupe2"

End Sub


GetFromClipboard, méthode, exemple

L’exemple suivant illustre les mouvements de données d’un contrôle TextBox vers le Presse-papiers, du Presse-papiers vers un objet DataObject et d’un objet DataObject vers un autre contrôle TextBox. La méthode GetFromClipboard transfère les données du Presse-papiers vers un objet DataObject. Les méthodes Copy et GetText sont aussi utilisées.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles TextBox nommés TextBox1 et TextBox2,

•	un contrôle CommandButton nommé CommandButton1.

Dim MyData as DataObject

Private Sub CommandButton1_Click()

    'Sélectionnez un texte avant de le copier dans le

    'Presse-papiers

    TextBox1.SelStart = 0

    TextBox1.SelLength = TextBox1.TextLength

    TextBox1.Copy

    MyData.GetFromClipboard

    TextBox2.Text = MyData.GetText(1)

End Sub

Private Sub UserForm_Initialize()

    Set MyData = New DataObject

    TextBox1.Text = "Placez ces données dans " & _

         "le Presse-papiers, dans un objet " & "DataObject, puis dans le contrôle " & "TextBox2 !"

End Sub


PutInClipboard, méthode, exemple

L’exemple suivant illustre les mouvements de données d’un contrôle TextBox vers un objet DataObject, d’un objet DataObject vers le Presse-papiers et du Presse-papiers vers un autre contrôle TextBox. La méthode PutInClipboard transfère les données d’un objet DataObject vers le Presse-papiers. Les méthodes SetText et Paste sont aussi utilisées.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles TextBox nommés TextBox1 et TextBox2,

•	un contrôle CommandButton nommé CommandButton1.

Dim MyData As DataObject

Private Sub CommandButton1_Click()

    Set MyData = New DataObject

    MyData.SetText TextBox1.Text

    MyData.PutInClipboard

    TextBox2.Paste

End Sub

Private Sub UserForm_Initialize()

    TextBox1.Text = "Placez ces données dans un " & _

                    "objet DataObject, dans le " & _

                    " Presse-papiers, puis dans " & _

                    "le contrôle TextBox2 !"

End Sub


DragBehavior, EnterFieldBehavior, propiétés, exemple
DragBehavior, EnterFieldBehavior,propriétés, exemple

L’exemple suivant utilise les propriétés DragBehavior et EnterFieldBehavior pour montrer les différents effets que vous pouvez obtenir lorsque vous entrez un contrôle et que vous déplacez les informations d’un contrôle vers un autre.

L’exemple utilise deux contrôles TextBox. Vous pouvez définir les propriétés DragBehavior et EnterFieldBehavior pour chaque contrôle et visualiser les effets du déplacement d’informations d’un contrôle vers l’autre.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	deux contrôles ToggleButton nommés ToggleButton1 et ToggleButton2, associés au contrôle TextBox1,

•	un contrôle TextBox nommé TextBox2,

•	deux contrôles ToggleButton nommés ToggleButton3 et ToggleButton4, associés au contrôle TextBox2.

Private Sub UserForm_Initialize()

    TextBox1.Text = _

         "Il était une fois, dans un pays ...,"

    ToggleButton1.Value = True

    ToggleButton1.Caption = "Déplacement activé"

    ToggleButton1.WordWrap = True

    TextBox1.DragBehavior = fmDragBehaviorEnabled

    ToggleButton2.Value = True

    ToggleButton2.Caption = "Rappelez la sélection"

    ToggleButton2.WordWrap = True

    TextBox1.EnterFieldBehavior = fmEnterFieldBehaviorRecallSelection

    TextBox2.Text = "XXX, YYYY"

    ToggleButton3.Value = False

    ToggleButton3.Caption = "Déplacement désactivé"

    ToggleButton3.WordWrap = True

    TextBox2.DragBehavior = fmDragBehaviorDisabled

    ToggleButton4.Value = False

    ToggleButton4.Caption = "Sélectionnez tout"

    ToggleButton4.WordWrap = True

    TextBox2.EnterFieldBehavior = fmEnterFieldBehaviorSelectAll

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

       ToggleButton1.Caption = "Déplacement activé"

       TextBox1.DragBehavior = fmDragBehaviorEnabled

    Else

       ToggleButton1.Caption = _

             "Déplacement désactivé"

       TextBox1.DragBehavior = fmDragBehaviorDisabled

    End If

End Sub

Private Sub ToggleButton2_Click()

    If ToggleButton2.Value = True Then

        ToggleButton2.Caption = _

                "Rappelez la sélection"

        TextBox1.EnterFieldBehavior = fmEnterFieldBehaviorRecallSelection

    Else

        ToggleButton2.Caption = "Sélectionnez tout"

        TextBox1.EnterFieldBehavior = fmEnterFieldBehaviorSelectAll

    End If

End Sub

Private Sub ToggleButton3_Click()

    If ToggleButton3.Value = True Then

       ToggleButton3.Caption = "Déplacement activé"

       TextBox2.DragBehavior = fmDragBehaviorEnabled

    Else

       ToggleButton3.Caption = _

                 "Déplacement désactivé"

       TextBox2.DragBehavior = fmDragBehaviorDisabled

    End If

End Sub

Private Sub ToggleButton4_Click()

    If ToggleButton4.Value = True Then

        ToggleButton4.Caption = _

                 "Rappelez la sélection"

        TextBox2.EnterFieldBehavior = fmEnterFieldBehaviorRecallSelection

    Else

       ToggleButton4.Caption = "Sélectionnez tout"

       TextBox2.EnterFieldBehavior = fmEnterFieldBehaviorSelectAll

    End If

End Sub


GetFormat, GetText, SetText, méthodes, exemple
GetFormat, GetText et SetText, méthodes, exemple

L’exemple suivant utilise les méthodes GetFormat, GetText et SetText pour transférer du texte entre un objet DataObject et le Presse-papiers.

L’utilisateur saisit le texte dans un contrôle TextBox et peut le transférer vers un objet DataObject sous forme de texte standard en cliquant sur le contrôle CommandButton1. S’il clique sur le contrôle CommandButton2, il récupère le texte de l’objet DataObject. S’il clique sur le contrôle CommandButton3, il copie le texte du contrôle TextBox1 dans l’objet DataObject dans un format personnalisé. S’il clique sur le contrôle CommandButton4, il récupère le texte de l’objet DataObject dans un format personnalisé.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	quatre contrôles CommandButton nommés CommandButton1 à CommandButton4,

•	un contrôle Label nommé Label1.

Dim MyDataObject As DataObject

Private Sub CommandButton1_Click()

'Placez un format standard dans le Presse-papiers

    If TextBox1.TextLength > 0 Then

        Set MyDataObject = New DataObject

        MyDataObject.SetText TextBox1.Text

        Label1.Caption = "Placez dans D.O."

        CommandButton2.Enabled = True

        CommandButton4.Enabled = False

    End If

End Sub

Private Sub CommandButton2_Click()

'Accédez au format standard du Presse-papiers

    If MyDataObject.GetFormat(1) = True Then

        Label1.Caption = "Format Std - " & MyDataObject.GetText(1)

    End If

End Sub

Private Sub CommandButton3_Click()

'Placez un format personnalisé dans le Presse-papiers

    If TextBox1.TextLength > 0 Then

        Set MyDataObject = New DataObject

        MyDataObject.SetText TextBox1.Text, 233

        Label1.Caption = _

               "Format personnalisé dans D.O."

        CommandButton4.Enabled = True

        CommandButton2.Enabled = False

    End If

End Sub

Private Sub CommandButton4_Click()

'Accédez au format personnalisé du Presse-papiers

    If MyDataObject.GetFormat(233) = True Then

        Label1.Caption = "Format pers. - " & MyDataObject.GetText(233)

End If

End Sub

Private Sub UserForm_Initialize()

    CommandButton2.Enabled = False

    CommandButton4.Enabled = False

End Sub


CanPaste, propriété et Paste, Copy, méthodes, exemple

L’exemple suivant utilise la propriété CanPaste et la méthode Paste pour coller un contrôle ComboBox du Presse-papiers dans un objet Page d’un contrôle MultiPage. Il utilise les méthodes SetFocus et Copy pour copier un contrôle de la feuille dans le Presse-papiers.

Pour copier le contrôle ComboBox vers le Presse-papiers, l’utilisateur clique sur le contrôle CommandButton1. Pour coller le contrôle ComboBox dans le contrôle MultiPage, l’utilisateur double-clique sur le contrôle CommandButton1 (avec l’événement DblClick).

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	un contrôle ComboBox nommé ComboBox1,

•	un contrôle MultiPage nommé MultiPage1,

•	un contrôle CommandButton nommé CommandButton1.

Note   Cet exemple comprend également une sous-routine pour illustrer l’opération de collage de texte dans un contrôle.

Private Sub UserForm_Initialize()

    ComboBox1.AddItem "Quelle belle journée !"

    CommandButton1.Caption = "Copiez le contrôle" _

               & " ComboBox dans le Presse-papiers"

    CommandButton1.AutoSize = True

End Sub

Private Sub MultiPage1_DblClick(ByVal Index As Long, ByVal Cancel As MSForms.ReturnBoolean)

    If MultiPage1.Pages(MultiPage1.Value).CanPaste = True Then

        MultiPage1.Pages(MultiPage1.Value).Paste

    Else

        TextBox1.Text = "Collage impossible"

    End If

End Sub

Private Sub CommandButton1_Click()

        UserForm1.ComboBox1.SetFocus

        UserForm1.Copy

End Sub

'Code permettant de coller du texte dans un contrôle

'Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

'   If ComboBox1.CanPaste = True Then

'        ComboBox1.Paste

'    Else

'        TextBox1.Text = "Collage impossible"

'    End If

'End Sub


ScrollBar, contrôle, exemple

L’exemple suivant illustre l’utilisation du contrôle autonome ScrollBar et indique le changement de sa valeur chaque fois que l’utilisateur déplace le curseur de défilement. L’utilisateur peut déplacer le curseur de défilement soit en cliquant sur l’une des flèches situées aux extrémités du contrôle, soit en le faisant glisser. Dans ce deuxième cas, l’événement Scroll affiche un message indiquant que l’utilisateur a fait glisser le curseur pour obtenir la nouvelle valeur.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ScrollBar nommé ScrollBar1,

•	deux contrôles Label nommés Label1 et Label2. Label1 contient les informations de mise à l’échelle destinées à l’utilisateur, et Label2 indique la valeur delta.

Dim ScrollSaved As Integer        'Valeur précédente

                                  'de ScrollBar

Private Sub UserForm_Initialize()

    ScrollBar1.Min = -225

    ScrollBar1.Max = 289

    ScrollBar1.Value = 0

    Label1.Caption = "-225  -----Gadgets-----   289"

    Label1.AutoSize = True

    Label2.Caption = ""

End Sub

Private Sub ScrollBar1_Change()

    Label2.Caption = " Modification des gadgets " & (ScrollSaved - ScrollBar1.Value)

End Sub

Private Sub ScrollBar1_Exit(ByVal Cancel as MSForms.ReturnBoolean)

    Label2.Caption = " Modification des gadgets " & (ScrollSaved - ScrollBar1.Value)

    ScrollSaved = ScrollBar1.Value

End Sub

Private Sub ScrollBar1_Scroll()

    Label2.Caption = (ScrollSaved - ScrollBar1.Value) & " Modification des gadgets lors du défilement"

End Sub


CanUndo, CanRedo, propriétés et UndoAction, RedoAction, méthodes ,exemple

L’exemple suivant montre comment annuler ou rétablir les modifications effectuées dans une zone de texte ou dans la partie texte d’un contrôle ComboBox. Il vérifie si l’opération d’annulation ou de rétablissement est possible, puis il exécute l’action appropriée. Il utilise les propriétés CanUndo et CanRedo, ainsi que les méthodes UndoAction et RedoAction.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	un contrôle ComboBox nommé ComboBox1,

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2.

Private Sub CommandButton1_Click()

    If UserForm1.CanUndo = True Then

        UserForm1.UndoAction

        MsgBox "EL annulé"

    Else

        MsgBox "Pas d’annulation."

    End If

End Sub

Private Sub CommandButton2_Click()

    If UserForm1.CanRedo = True Then

        UserForm1.RedoAction

        MsgBox "EL rétabli"

    Else

        MsgBox "Pas de rétablissement."

    End If

End Sub

Private Sub UserForm_Initialize()

    TextBox1.Text = "Tapez votre texte ici."

    ComboBox1.ColumnCount = 3

    ComboBox1.AddItem "Choix 1, colonne 1"

    ComboBox1.List(0, 1) = "Choix 1, colonne 2"

    ComboBox1.List(0, 2) = "Choix 1, colonne 3"

    CommandButton1.Caption = "Undo"

    CommandButton2.Caption = "Redo"

End Sub


BoundColumn, propriété, exemple

L’exemple suivant montre la façon dont la propriété BoundColumn influence la valeur d’un contrôle ListBox. L’utilisateur peut attribuer au contrôle ListBox la valeur d’index de la ligne spécifiée, ou la valeur d’une colonne de données spécifiée du contrôle ListBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ListBox nommé ListBox1,

•	un contrôle Label nommé Label1,

•	trois contrôles OptionButton nommés OptionButton1, OptionButton2 et OptionButton3.

Private Sub UserForm_Initialize()

    ListBox1.ColumnCount = 2

    ListBox1.AddItem "Élément 1, colonne 1"

    ListBox1.List(0, 1) = "Élément 1, colonne 2"

    ListBox1.AddItem "Élément 2, colonne 1"

    ListBox1.List(1, 1) = "Élément 2, colonne 2"

    ListBox1.Value = "Élément 1, colonne 1"

    OptionButton1.Caption = "Index de liste"

    OptionButton2.Caption = "Colonne 1"

    OptionButton3.Caption = "Colonne 2"

    OptionButton2.Value = True

End Sub

Private Sub OptionButton1_Click()

    ListBox1.BoundColumn = 0

    Label1.Caption = ListBox1.Value

End Sub

Private Sub OptionButton2_Click()

    ListBox1.BoundColumn = 1

    Label1.Caption = ListBox1.Value

End Sub

Private Sub OptionButton3_Click()

    ListBox1.BoundColumn = 2

    Label1.Caption = ListBox1.Value

End Sub

Private Sub ListBox1_Click()

    Label1.Caption = ListBox1.Value

End Sub


List, propriété, exemple

L’exemple suivant permute les colonnes d’un contrôle ListBox multicolonne et utilise la propriété List comme indiqué ci-après :

1.	Pour accéder aux valeurs individuelles du contrôle ListBox et les permuter, la propriété List recourt à des indices pour désigner la ligne et la colonne d’une valeur spécifiée.

2.	Pour charger initialement le contrôle ListBox avec les valeurs d’un tableau, la propriété List ne dispose pas d’indice.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle ListBox nommé ListBox1 et un contrôle CommandButton nommé CommandButton1.

Dim MyArray(6, 3)           'Tableau contenant des valeurs de colonnes pour le contrôle ListBox.

Private Sub UserForm_Initialize()

    Dim i As Single

'Cette zone de liste contient 3 colonnes de données

    ListBox1.ColumnCount = 3

    'Chargez les valeurs d’entiers de MyArray

    For i = 0 To 5

        MyArray(i, 0) = i

        MyArray(i, 1) = Rnd

        MyArray(i, 2) = Rnd

    Next i

    'Chargez le contrôle ListBox1

    ListBox1.List() = MyArray

End Sub

Private Sub CommandButton1_Click()

' Permutez le contenu des colonnes 1 et 3

    Dim i As Single

    Dim Temp As Single

    For i = 0 To 5

        Temp = ListBox1.List(i, 0)

        ListBox1.List(i, 0) = ListBox1.List(i, 2)

        ListBox1.List(i, 2) = Temp

    Next i

End Sub


ClientHeight, ClientLeft, ClientTop et ClientWidth, propriétés, exemple

L’exemple suivant définit les dimensions d’un contrôle Image à la taille d’une zone client TabStrip lorsque l’utilisateur clique sur un contrôle CommandButton. Le code utilise les propriétés Height, Left, Top, Width, ClientHeight, ClientLeft, ClientTop et ClientWidth.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle TabStrip nommé TabStrip1,

•	un contrôle Image nommé Image1.

Private Sub UserForm_Initialize()

CommandButton1.Caption = _

    "Dimensionnez l’image à la taille de la zone Tab"

CommandButton1.WordWrap = True

CommandButton1.AutoSize = True

End Sub

Private Sub CommandButton1_Click()

'Placez l’image au début du contrôle TabStrip

Image1.ZOrder (fmFront)

'ClientLeft et ClientTop sont mesurés à partir du

'bord du contrôle TabStrip,

'et non à partir des bords de la feuille contenant

' TabStrip.

Image1.Left = TabStrip1.Left + TabStrip1.ClientLeft

Image1.Top = TabStrip1.Top + TabStrip1.ClientTop

Image1.Width = TabStrip1.ClientWidth

Image1.Height = TabStrip1.ClientHeight

End Sub


MultiLine, WordWrap et ScrollBars, propriétés, exemple

L’exemple suivant illustre l’utilisation des propriétés MultiLine, WordWrap et ScrollBars dans un contrôle TextBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox nommé TextBox1,

•	quatre contrôles ToggleButton nommés ToggleButton1 à ToggleButton4.

Pour visualiser tout le texte placé dans le contrôle TextBox, attribuez la valeur True aux propriétés MultiLine et WordWrap en cliquant sur les contrôles ToggleButton.

Lorsque MultiLine a la valeur True, vous pouvez entrer de nouvelles lignes de texte à l’aide des touches MAJ+ENTRÉE.

La propriété ScrollBars apparaît lorsque vous modifiez manuellement le contenu du contrôle TextBox.

Private Sub UserForm_Initialize()

'Initialisez les propriétés TextBox et les boutons à

'bascule

TextBox1.Text = "Tapez votre texte ici. Appuyez" _

                & " sur MAJ+ENTRÉE pour aller vers" _

                & " une nouvelle ligne."

TextBox1.AutoSize = False

ToggleButton1.Caption = "AutoSize désactivée"

ToggleButton1.Value = False

ToggleButton1.AutoSize = True

TextBox1.WordWrap = False

ToggleButton2.Caption = "WordWrap désactivée"

ToggleButton2.Value = False

ToggleButton2.AutoSize = True

TextBox1.ScrollBars = 0

ToggleButton3.Caption = "ScrollBars désactivée"

ToggleButton3.Value = False

ToggleButton3.AutoSize = True

TextBox1.MultiLine = False

ToggleButton4.Caption = "Une ligne"

ToggleButton4.Value = False

ToggleButton4.AutoSize = True

 End Sub

Private Sub ToggleButton1_Click()

'Définissez la propriété AutoSize et le contrôle

'ToggleButton associé

If ToggleButton1.Value = True Then

TextBox1.AutoSize = True

ToggleButton1.Caption = "AutoSize activée"

Else

TextBox1.AutoSize = False

ToggleButton1.Caption = "AutoSize désactivée"

End If

End Sub

Private Sub ToggleButton2_Click()

'Définissez la propriété WordWrap et le contrôle ToggleButton associé

If ToggleButton2.Value = True Then

TextBox1.WordWrap = True

ToggleButton2.Caption = "WordWrap activée"

Else

TextBox1.WordWrap = False

ToggleButton2.Caption = "WordWrap désactivée"

End If

End Sub

Private Sub ToggleButton3_Click()

'Définissez la propriété ScrollBars et le contrôle ToggleButton associé

If ToggleButton3.Value = True Then

TextBox1.ScrollBars = 3

ToggleButton3.Caption = "ScrollBars activée"

Else

TextBox1.ScrollBars = 0

ToggleButton3.Caption = "ScrollBars désactivée"

End If

End Sub

Private Sub ToggleButton4_Click()

'Définissez la propriété MultiLine et le contrôle

'ToggleButton associé

If ToggleButton4.Value = True Then

TextBox1.MultiLine = True

ToggleButton4.Caption = "Multiligne"

Else

TextBox1.MultiLine = False

ToggleButton4.Caption = "Une ligne"

End If

End Sub


Glisser-déplacer, opération, exemple

L’exemple suivant illustre une opération glisser-déplacer à partir d’un contrôle ListBox vers un autre, à l’aide d’un objet DataObject contenant le texte déplacé. Le code utilise les méthodes SetText et StartDrag dans l’événement MouseMove pour réaliser l’opération glisser-déplacer.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient deux contrôles ListBox nommés ListBox1 et ListBox2. Vous devez également ajouter des choix dans le second contrôle ListBox.

Private Sub ListBox2_BeforeDragOver(ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As MSForms.DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As Long, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As Integer)

    Cancel = True

    Effect = 1

End Sub

Private Sub ListBox2_BeforeDropOrPaste(ByVal Cancel As MSForms.ReturnBoolean, ByVal Action As Long, ByVal Data As MSForms.DataObject, ByVal X As Single, ByVal Y As Single, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As Integer)

    Cancel = True

    Effect = 1

    ListBox2.AddItem Data.GetText

End Sub

Private Sub ListBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    Dim MyDataObject As DataObject

    If Button = 1 Then

        Set MyDataObject = New DataObject

        Dim Effect As Integer

        MyDataObject.SetText ListBox1.Value

        Effect = MyDataObject.StartDrag

    End If

End Sub

Private Sub UserForm_Initialize()

    For i = 1 To 10

        ListBox1.AddItem "Choice " & (ListBox1.ListCount + 1)

    Next i

End Sub


Accès à un objet Page, exemple

L’exemple suivant indique les différentes façons d’accéder à une page individuelle d’un contrôle MultiPage, à l’aide :

•	de la collection Pages et d’un index numérique,

•	de la collection Pages et d’un index de chaîne,

•	de la collection Pages et de la méthode Item,

•	du nom de la page individuelle du contrôle MultiPage.

•	de la propriété SelectedItem.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle MultiPage nommé MultiPage1.

Private Sub UserForm_Initialize()

    Dim PageNAme As String

    For i = 0 To MultiPage1.Count - 1

        'Utilisez un index (numérique ou de chaîne)

        MsgBox "MultiPage1.Pages(i).Caption = " & MultiPage1.Pages(i).Caption

        MsgBox "MultiPage1.Pages.Item(i).Caption = " & MultiPage1.Pages.Item(i).Caption

        PageNAme = MultiPage1.Pages(i).Name

        MsgBox "PageName = " & PageNAme

        MsgBox "MultiPage1.Pages(PageName).Caption = " & MultiPage1.Pages(PageNAme).Caption

        MsgBox "MultiPage1.Pages.Item(PageName).Caption = " & MultiPage1.Pages.Item(PageNAme).Caption

        'Utilisez l’objet Page sans référence à la

        'collection Pages

        If i = 0 Then

            MsgBox "MultiPage1.Page1.Caption= " & MultiPage1.Page1.Caption

        ElseIf i = 1 Then

            MsgBox "MultiPage1.Page2.Caption = " & MultiPage1.Page2.Caption

        End If

'Utilisez la propriété SelectedItem

        MultiPage1.Value = i

        MsgBox "MultiPage1.SelectedItem.Caption = " & MultiPage1.SelectedItem.Caption

    Next i

End Sub


Ajout d'un contrôle, exemple
Ajout d’un contrôle, exemple

L’exemple suivant utilise la méthode Add pour ajouter un contrôle dans une feuille, en mode exécution, et utilise l’événement AddControl pour confirmer l’ajout du contrôle.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle Label nommé Label1.

Dim Mycmd as Control

Private Sub CommandButton1_Click()

Set Mycmd = Controls.Add("Forms.CommandButton.1") ', CommandButton2, Visible)

Mycmd.Left = 18

Mycmd.Top = 150

Mycmd.Width = 175

Mycmd.Height = 20

Mycmd.Caption = "C’est amusant." & Mycmd.Name

End Sub

Private Sub UserForm_AddControl(ByVal Control As MSForms.Control)

Label1.Caption = "Le contrôle a été ajouté."

End Sub


Ajout d'un contrôle dans un contrôle MultiPage, exemple
Ajout d’un contrôle dans un contrôle MultiPage, exemple

L’exemple suivant utilise les méthodes Add, Clear et Remove pour ajouter et supprimer un contrôle dans un objet Page d’un contrôle MultiPage, en mode exécution.

Pour utilisez cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle MultiPage nommé MultiPage1,

•	trois contrôles CommandButton nommés CommandButton1 à CommandButton3.

Dim MyTextBox As Control

Private Sub CommandButton1_Click()

Set MyTextBox = MultiPage1.Pages(0).Controls.Add("Forms.TextBox.1", "MyTextBox", Visible)

End Sub

Private Sub CommandButton2_Click()

MultiPage1.Pages(0).Controls.Clear

End Sub

Private Sub CommandButton3_Click()

If MultiPage1.Pages(0).Controls.Count > 0  Then

MultiPage1.Pages(0).Controls.Remove "MyTextBox"

End If

End Sub

Private Sub UserForm_Initialize()

CommandButton1.Caption = "Ajoutez le contrôle"

CommandButton2.Caption = "Supprimez les contrôles"

CommandButton3.Caption = "Supprimez le contrôle"

End Sub


ListBox, contrôle, exemple

L’exemple suivant ajoute et supprime le contenu d’un contrôle ListBox à l’aide des méthodes AddItem, RemoveItem et SetFocus, et des propriétés ListIndex et ListCount.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ListBox nommé ListBox1,

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2.

Dim EntryCount As Single

Private Sub CommandButton1_Click()

    EntryCount = EntryCount + 1

    ListBox1.AddItem (EntryCount & " - Sélection")

End Sub

Private Sub CommandButton2_Click()

    ListBox1.SetFocus

    'Vérifiez que le contrôle ListBox contient des

    'éléments de liste

    If ListBox1.ListCount >= 1 Then

        'Si aucune sélection, choisissez le dernier

        'élément de la liste.

        If ListBox1.ListIndex = -1 Then

            ListBox1.ListIndex = ListBox1.ListCount - 1

        End If

        ListBox1.RemoveItem (ListBox1.ListIndex)

    End If

End Sub

Private Sub UserForm_Initialize()

    EntryCount = 0

    CommandButton1.Caption = "Ajoutez l’élément"

    CommandButton2.Caption = "Supprimez l’élément"

End Sub


ZOrder, méthode, exemple

L’exemple suivant définit la hiérarchie d’un contrôle TextBox, afin que l’utilisateur puisse afficher l’intégralité de ce contrôle (en l’amenant au premier plan de la hiérarchie) ou le placer derrière les autres contrôles (en le renvoyant à l’arrière-plan de la hiérarchie).

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	trois contrôles TextBox nommés TextBox1 à TextBox3,

•	un contrôle ToggleButton nommé ToggleButton1.

Private Sub ToggleButton1_Click()

If ToggleButton1.Value = True Then

'Placez le contrôle TextBox2 en haut de la hiérarchie

TextBox2.ZOrder (fmTop)

'Actualisez la légende du contrôle ToggleButton

'pour identifier l’état suivant

ToggleButton1.Caption = _

   "Envoyez le contrôle TextBox2 à l’arrière-plan"

Else

TextBox2.ZOrder (1)  'Placez le contrôle TextBox2

                        'à la fin de la hiérarchie

'Actualisez la légende du contrôle ToggleButton

'pour identifier l’état suivant

ToggleButton1.Caption = _

     "Amenez le contrôle TextBox2 au premier plan"

End If

End Sub

Private Sub UserForm_Initialize()

'Définissez des zones de texte pour afficher la

'hiérarchie dans la feuille

TextBox1.Text = "TextBox 1"

TextBox2.Text = "TextBox 2"

TextBox3.Text = "TextBox 3"

TextBox1.Height = 40

TextBox2.Height = 40

TextBox3.Height = 40

TextBox1.Width = 60

TextBox2.Width = 60

TextBox3.Width = 60

TextBox1.Left = 10

TextBox1.Top = 10

TextBox2.Left = 25      'Placez TextBox2 sur TextBox1

TextBox2.Top = 25

TextBox3.Left = 40      'Placez TextBox3 sur TextBox2

                        'et TextBox1

TextBox3.Top = 40

ToggleButton1.Value = False

ToggleButton1.Caption = _

     "Amenez le contrôle TextBox2 au premier plan"

ToggleButton1.Left = 10

ToggleButton1.Top = 90

ToggleButton1.Width = 50

ToggleButton1.Height = 50

End Sub


Accelerator, Caption, propriétés, exemple

Cet exemple modifie les propriétés Accelerator et Caption d’un contrôle CommandButton chaque fois que l’utilisateur clique sur le bouton ou appuie sur la touche d’accès rapide correspondante. L’événement Click contient le code permettant de modifier les propriétés Accelerator et Caption.

Pour tester cet exemple, collez le code suivant dans la partie Déclarations d’une feuille contenant un contrôle CommandButton nommé CommandButton1.

Private Sub UserForm_Initialize()

CommandButton1.Accelerator  = "C"         'Définissez la touche d’accès rapide ALT + C

End Sub

Private Sub CommandButton1_Click ()

If CommandButton1.Caption = "OK" Then     'Vérifiez la légende et modifiez-la.

CommandButton1.Caption = "Cliqué"

CommandButton1.Accelerator  = "C"         'Définissez la touche d’accès rapide ALT + C

Else

CommandButton1.Caption = "OK"

'Définissez la touche d’accès rapide ALT + O

CommandButton1.Accelerator  = "O"

End If

End Sub


AutoSize, propriétés, exemple
AutoSize, propriété, exemple

L’exemple suivant montre les effets de la propriété AutoSize avec un contrôle TextBox d’une ligne et un autre de plusieurs lignes. L’utilisateur peut entrer son texte dans le contrôle TextBox et activer ou désactiver la propriété AutoSize sans tenir compte du contenu du contrôle. Le code utilise aussi la propriété Text.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles TextBox nommés TextBox1 et TextBox2,

•	un contrôle ToggleButton nommé ToggleButton1.

Private Sub UserForm_Initialize()

    TextBox1.Text = "Contrôle TextBox " & _

          "d’une ligne. Tapez votre texte ici."

    TextBox2.MultiLine = True

    TextBox2.Text = "Contrôle TextBox multiligne." _

                  & " Tapez votre texte ici." _

                  & " Commencez une nouvelle " _

                  & "ligne en appuyant sur " _

                  & "CTRL+ENTRÉE."

    ToggleButton1.Value = True

    ToggleButton1.Caption = _

           "Propriété AutoSize activée"

    TextBox1.AutoSize = True

    TextBox2.AutoSize = True

End Sub

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

        ToggleButton1.Caption = _

             "Propriété AutoSize activée"

        TextBox1.AutoSize = True

        TextBox2.AutoSize = True

    Else

        ToggleButton1.Caption = _

             "Propriété AutoSize désactivée"

        TextBox1.AutoSize = False

        TextBox2.AutoSize = False

    End If

End Sub


Bold, Italic, Size, StrikeThrough, Underline, Weight, propriétés, exemple
Bold, Italic, Size, StrikeThrough, Underline et Weight, propriétés, exemple

L’exemple suivant illustre l’utilisation d’un objet Font et des propriétés Bold, Italic, Size, StrikeThrough, Underline et Weight associées aux polices. Vous pouvez traiter les propriétés des polices d’un objet directement ou à l’aide d’un alias, comme dans cet exemple.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	quatre contrôles ToggleButton nommés ToggleButton1 à ToggleButton4,

•	un second contrôle Label et un contrôle TextBox nommés respectivement Label2 et TextBox1.

Dim MyFont As StdFont

Private Sub ToggleButton1_Click()

    If ToggleButton1.Value = True Then

       'Utilisation de l’alias MyFont pour

       'contrôler la police

        MyFont.Bold = True

        ToggleButton1.Caption = _

            "Propriété Bold activée"

        'Augmentez la taille de la police

        MyFont.Size = 22

    Else

        MyFont.Bold = False

        ToggleButton1.Caption = _

            "Propriété Bold désactivée"

        'Rétablissez la taille initiale de la police

        MyFont.Size = 8

    End If

    'Les propriétés Bold et Weight sont associées

    TextBox1.Text = Str(MyFont.Weight)

End Sub

Private Sub ToggleButton2_Click()

    If ToggleButton2.Value = True Then

        'Utilisation directe de Label1.Font

        Label1.Font.Italic = True

        ToggleButton2.Caption = _

           "Propriété Italic désactivée"

    Else

        Label1.Font.Italic = False

        ToggleButton2.Caption = _

               "Propriété Italic désactivée"

    End If

End Sub

Private Sub ToggleButton3_Click()

    If ToggleButton3.Value = True Then

        'Utilisation directe de contrôle Label1.Font

        Label1.Font.Strikethrough = True

        ToggleButton3.Caption = _

             "Propriété StrikeThrough désactivée"

    Else

        Label1.Font.Strikethrough = False

        ToggleButton3.Caption = _

             "Propriété StrikeThrough désactivée"

    End If

End Sub

Private Sub ToggleButton4_Click()

    If ToggleButton4.Value = True Then

         'Utilisation de l’alias MyFont pour

         'Label1.Font

        MyFont.Underline = True

        ToggleButton4.Caption = _

              "Propriété Underline désactivée"

    Else

        Label1.Font.Underline = False

        ToggleButton4.Caption = _

              "Propriété Underline désactivée"

    End If

End Sub

Private Sub UserForm_Initialize()

    Set MyFont = Label1.Font

    ToggleButton1.Value = True

    ToggleButton1.Caption = "Propriété Bold activée"

    Label1.AutoSize = True	'Définissez la taille du

                           	'contrôle Label1

    Label1.AutoSize = False

    ToggleButton2.Value = False

    ToggleButton2.Caption = _

                "Propriété Italic désactivée"

    ToggleButton3.Value = False

    ToggleButton3.Caption = _

                "Propriété StrikeThrough désactivée"

    ToggleButton4.Value = False

    ToggleButton4.Caption = _

                "Propriété Underline désactivée"

    Label2.Caption = "Graisse de la police"

    TextBox1.Text = Str(Label1.Font.Weight)

    TextBox1.Enabled = False

End Sub


Border, Color, exemple d'enrichissements
Bordure, Couleur, exemple d’enrichissements

L’exemple suivant illustre l’utilisation des propriétés BorderStyle et SpecialEffect, en affichant chaque bordure disponible à l’aide de ces propriétés. Il indique aussi comment contrôler les options de couleurs à l’aide des propriétés BackColor, BackStyle, BorderColor et ForeColor.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	six contrôles TextBox nommés TextBox1 à TextBox6,

•	deux contrôles ToggleButton nommés ToggleButton1 et ToggleButton2.

Private Sub UserForm_Initialize()

'Initialisez chaque contrôle TextBox avec un style de

'bordure ou un effet spécial,

'et des couleurs de premier et d’arrière-plan

'Le contrôle TextBox1 utilise initialement un style

'de bordure

TextBox1.Text = "BorderStyle-Simple"

TextBox1.BorderStyle = fmBorderStyleSingle

'Couleur - Rose saumon

TextBox1.BorderColor = RGB(255, 128, 128)

'Couleur - Jaune

TextBox1.ForeColor = RGB(255, 255, 0)

'Couleur - Vert #2

TextBox1.BackColor = RGB(0, 128, 64)

'Les contrôles TextBoxes 2 à 6 utilisent initialement

' des effects spéciaux

TextBox2.Text = "Plat"

TextBox2.SpecialEffect = fmSpecialEffectFlat

'Couleur - Marron

TextBox2.ForeColor = RGB(64, 0, 0)

'Couleur - Bleu

TextBox2.BackColor = RGB(0, 0, 255)

'Vérifiez que le style d’arrière-plan du contrôle

'TextBox2 est initialement opaque.

TextBox2.BackStyle = fmBackStyleOpaque

TextBox3.Text = "Gravé"

TextBox3.SpecialEffect = fmSpecialEffectEtched

'Couleur - Violet

TextBox3.ForeColor = RGB(128, 0, 255)

'Couleur - Cyan

TextBox3.BackColor = RGB(0, 255, 255)

'Définissez la propriété BorderColor pour un usage

'ultérieur (quand le style de

'bordure=fmBorderStyleSingle)

'Couleur - Noir

TextBox3.BorderColor = RGB(0, 0, 0)

TextBox4.Text = "Tamponné"

TextBox4.SpecialEffect = fmSpecialEffectBump

'Couleur - Magenta

TextBox4.ForeColor = RGB(255, 0, 255)

'Couleur - Bleu marine

TextBox4.BackColor = RGB(0, 0, 100)

TextBox5.Text = "En relief"

TextBox5.SpecialEffect = fmSpecialEffectRaised

'Couleur - Rouge

TextBox5.ForeColor = RGB(255, 0, 0)

'Couleur - Gris

TextBox5.BackColor = RGB(128, 128, 128)

TextBox6.Text = "Creux"

TextBox6.SpecialEffect = fmSpecialEffectSunken

'Couleur - Vert olive

TextBox6.ForeColor = RGB(0, 64, 0)

'Couleur - Vert #1

TextBox6.BackColor = RGB(0, 255, 0)

ToggleButton1.Caption = "Permutez les styles"

ToggleButton2.Caption = _

            "Arrière-plan transparent/opaque"

End Sub

Private Sub ToggleButton1_Click()

'Echangez les bordures entre les contrôles TextBox1

'et TextBox3

If ToggleButton1.Value = True Then

'Faites passer le contrôle TextBox1 de la

'propriété BorderStyle au style Gravé

TextBox1.Text = "Gravé"

TextBox1.SpecialEffect = fmSpecialEffectEtched

'Faites passer le contrôle TextBox3 du style Gravé

'à la propriété BorderStyle

TextBox3.Text = "BorderStyle-Simple"

TextBox3.BorderStyle = fmBorderStyleSingle

Else

'Redonnez au contrôle TextBox1 la propriété

'BorderStyle

TextBox1.Text = "BorderStyle-Simple"

TextBox1.BorderStyle = fmBorderStyleSingle

'Redonnez au contrôle TextBox3 le style Gravé

TextBox3.Text = "Gravé"

TextBox3.SpecialEffect = fmSpecialEffectEtched

End If

End Sub

Private Sub ToggleButton2_Click()

'Définissez un arrière-plan opaque ou transparent

If ToggleButton2.Value = True Then

'Affectez au contrôle TextBox2 un arrière-plan

'transparent

TextBox2.BackStyle = fmBackStyleTransparent

Else

'Redonnez au contrôle TextBox2 un arrière-plan

'opaque

TextBox2.BackStyle = fmBackStyleOpaque

End If

End Sub


Column, propriété, exemple

'

L’exemple suivant charge un tableau bidimensionnel contenant des données et, à tour de rôle, deux contrôles ListBox à l’aide des propriétés Column et List. À noter que la colonne Column transpose les éléments du tableau pendant le chargement.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient deux contrôles ListBox nommés ListBox1 et ListBox2.

Dim MyArray(6,3)

Private Sub UserForm_Initialize()

    Dim i As Single

'La 1re zone de liste contient 3 colonnes de données

    ListBox1.ColumnCount = 3

'La seconde zone de liste contient 6 colonnes de

'données

    ListBox2.ColumnCount = 6

   'Chargez des nombres entiers dans la première

   'colonne de MyArray

    For i = 0 To 5

        MyArray(i, 0) = i

    Next i

    'Chargez les colonnes 2 et 3 de MyArray

    MyArray(0, 1) = "Zéro"

    MyArray(1, 1) = "Un"

    MyArray(2, 1) = "Deux"

    MyArray(3, 1) = "Trois"

    MyArray(4, 1) = "Quatre"

    MyArray(5, 1) = "Cinq"

    MyArray(0, 2) = "Zéro"

    MyArray(1, 2) = "Un"

    MyArray(2, 2) = "Deux"

    MyArray(3, 2) = "Trois"

    MyArray(4, 2) = "Quatre"

    MyArray(5, 2) = "Cinq"

    'Chargez des données dans les contrôles ListBox1

    'et ListBox2

    ListBox1.List() = MyArray

    ListBox2.Column() = MyArray

End Sub


ColumnWidths, propriété, exemple

L’exemple suivant utilise la propriété ColumnWidths pour modifier la largeur des colonnes d’un contrôle ListBox multicolonne, trois contrôles TextBox pour spécifier les largeurs de colonne individuelles et l’événement Exit pour spécifier l’unité de mesure de chaque contrôle TextBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle ListBox nommé ListBox1,

•	trois contrôles TextBox nommés TextBox1 à TextBox3,

•	un contrôle CommandButton nommé CommandButton1.

Essayez d’entrer la valeur 0 pour masquer une colonne.

Dim MyArray(2, 3) As String

Private Sub CommandButton1_Click()

'La propriété ColumnWidths requiert une valeur

'pour chaque colonne. Les valeurs sont séparées

'par des points-virgules

ListBox1.ColumnWidths = TextBox1.Text & ";" & TextBox2.Text & ";" & TextBox3.Text

End Sub

Private Sub TextBox1_Exit(ByVal Cancel as MSForms.ReturnBoolean)

'La propriété ColumnWidths accepte des points

'(pas d’unités), des pouces ou des centimètres;

'définissez des pouces par défaut

If Not (InStr(TextBox1.Text, "in") > 0 Or InStr(TextBox1.Text, "cm") > 0) Then

TextBox1.Text = TextBox1.Text & " in"

End If

End Sub

Private Sub TextBox2_Exit(ByVal Cancel as MSForms.ReturnBoolean)

'La propriété ColumnWidths accepte des points

'(pas d’unités), des pouces ou des centimètres;

'définissez des pouces par défaut

If Not (InStr(TextBox2.Text, "in") > 0 Or InStr(TextBox2.Text, "cm") > 0) Then

TextBox2.Text = TextBox2.Text & " in"

End If

End Sub

Private Sub TextBox3_Exit(ByVal Cancel as MSForms.ReturnBoolean)

'La propriété ColumnWidths accepte des points

'(pas d’unités), des pouces ou des centimètres;

'définissez des pouces par défaut

If Not (InStr(TextBox3.Text, "in") > 0 Or InStr(TextBox3.Text, "cm") > 0) Then

TextBox3.Text = TextBox3.Text & " in"

End If

End Sub

Private Sub UserForm_Initialize()

Dim i, j, Rows As Single

ListBox1.ColumnCount = 3

Rows = 2

For j = 0 To ListBox1.ColumnCount - 1

For i = 0 To Rows - 1

MyArray(i, j) = "Ligne " & i & ", Colonne " & j

Next i

Next j

'Chargez MyArray dans le contrôle ListBox1

ListBox1.List() = MyArray

'colonnes initiales d’un pouce

TextBox1.Text = "1 in"

TextBox2.Text = "1 in"

TextBox3.Text = "1 in"

End Sub


ControlTipText, propriété, exemple

L’exemple suivant définit la propriété ControlTipText pour trois contrôles CommandButton et deux objets Page d’un contrôle MultiPage.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle MultiPage nommé MultiPage1,

•	trois contrôles CommandButton nommés CommandButton1 à CommandButton3.

Note   Pour un objet Page individuel d’un contrôle MultiPage, la propriété ControlTipText devient active lorsque le focus se trouve sur le contrôle MultiPage ou sur un contrôle de l’objet page en cours du contrôle MultiPage.

Private Sub UserForm_Initialize()

MultiPage1.Page1.ControlTipText = _

             "Voici la page 1"

MultiPage1.Page2.ControlTipText = _

             "Et la page 2"

CommandButton1.ControlTipText = _

             "Et maintenant, voici”

CommandButton2.ControlTipText = _

             "une info-bulle de"

CommandButton3.ControlTipText = _

             "vos contrôles !"

End Sub


CurLine, CurTargetX, CurX et Text, propriétés, exemple

L’exemple suivant effectue le suivi des valeurs des propriétés CurLine, CurTargetX et CurX dans un contrôle TextBox multiligne. Les valeurs changent chaque fois que l’utilisateur déplace le point d’insertion et étend la sélection à l’aide du clavier.

Pour utiliser cet exemple, procédez comme suit :

1.	Copiez le code suivant dans la partie Déclarations d’une feuille.

2.	Ajoutez dans la feuille un contrôle TextBox de grande taille nommé TextBox1.

3.	Ajoutez dans une colonne trois contrôles TextBox nommés TextBox2, TextBox3 et TextBox4.

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

TextBox2.Text = TextBox1.CurLine

TextBox3.Text = TextBox1.CurX

TextBox4.Text = TextBox1.CurTargetX

End Sub

Private Sub UserForm_Initialize()

TextBox1.MultiLine = True

TextBox1.Text = "Tapez votre texte ici. Appuyez" _

&   "sur CTRL+ENTRÉE pour commencer " _

&   "une nouvelle ligne."

End Sub


HideSelection, propriétés, exemple
HideSelection, propriété, exemple

'

L’exemple suivant illustre l’utilisation de la propriété HideSelection dans le contexte d’une ou de plusieurs feuilles. L’utilisateur peut aussi bien sélectionner du texte dans un contrôle TextBox et tabuler vers d’autres contrôles d’une feuille, que transférer le focus vers une deuxième feuille. Le code utilise également la méthode SetFocus et les propriétés EnterFieldBehavior, MultiLine et Value.

Pour utiliser cet exemple, procédez comme suit :

1.	Copiez le code suivant (sauf la dernière sous-routine d’événement) dans la partie Déclarations d’une feuille.

2.	Ajoutez un contrôle TextBox de grande taille nommé TextBox1, un contrôle ToggleButton nommé ToggleButton1 et un contrôle CommandButton nommé CommandButton1.

3.	Insérez une deuxième feuille dans ce projet nommé UserForm2.

4.	Collez la sous-routine d’événement de la liste dans la partie Déclarations du projet UserForm2.

5.	Dans cette feuille, ajoutez un contrôle CommandButton nommé CommandButton1.

6.	Exécutez le projet UserForm1.

' ***** Code du projet UserForm1 *****

Private Sub CommandButton1_Click()

TextBox1.SetFocus

UserForm2.Show  'Appelle la seconde feuille.

End Sub

Private Sub ToggleButton1_Click()

If ToggleButton1.Value = True Then

TextBox1.HideSelection = False

ToggleButton1.Caption = "Sélection visible"

Else

TextBox1.HideSelection = True

ToggleButton1.Caption = "Sélection masquée"

End If

End Sub

Private Sub UserForm_Initialize()

TextBox1.MultiLine = True

TextBox1.EnterFieldBehavior = fmEnterFieldBehaviorRecallSelection

'Remplissez le contrôle TextBox

TextBox1.Text = "SelText indique le point de " _

     & "départ du texte sélectionné," & " ou le point d’insertion si " & "aucun texte n’a été sélectionné." & Chr$(10) & Chr$(13) & "La propriété SelStart est " & "toujours valide, même si le" & "focus ne se trouve pas sur " & "le contrôle. Si la valeur de " & " SelStart est inférieure à zéro," & " une erreur se produit. " & Chr$(10) & Chr$(13) & "La modification de la valeur de " & "SelStart annule la sélection en " & "cours dans le contrôle, place un" & " point d’insertion dans le texte" & ", et la propriété SelLength " & "prend la valeur zéro."

TextBox1.HideSelection = True

ToggleButton1.Caption = "Sélection masquée"

ToggleButton1.Value = False

End Sub

'

' ***** Code du projet UserForm2 *****

Private Sub CommandButton1_Click()

UserForm2.Hide

End Sub


Picture, PicturePosition, propriétés, exemple

L’exemple suivant utilise un contrôle ComboBox pour afficher les options de placement d’image d’un contrôle. Chaque fois que l’utilisateur clique sur un choix de la liste, l’image et la légende sont actualisées dans le contrôle CommandButton. Le code utilise aussi la méthode AddItem pour proposer d’autres choix dans le contrôle ComboBox.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Label nommé Label1,

•	un contrôle CommandButton nommé CommandButton1,

•	un contrôle ComboBox nommé ComboBox1.

Private Sub UserForm_Initialize()

Label1.Left = 18

Label1.Top = 12

Label1.Height = 12

Label1.Width = 190

Label1.Caption = "Sélectionnez le placement " _

          & "de l’image en fonction de la légende."

'Ajoutez des entrées dans la zone de liste

'modifiable. La valeur de chaque entrée est égale

'àla valeur correspondante de la propriété

'ListIndex dans la zone de liste modifiable.

ComboBox1.AddItem "Gauche Haut"    'ListIndex = 0

ComboBox1.AddItem "Gauche Centre"  'ListIndex = 1

ComboBox1.AddItem "Gauche Bas"     'ListIndex = 2

ComboBox1.AddItem "Droite Haut"    'ListIndex = 3

ComboBox1.AddItem "Droite Centre"  'ListIndex = 4

ComboBox1.AddItem "Droite Bas"     'ListIndex = 5

'ListIndex = 6

ComboBox1.AddItem "Au-dessus Gauche"

'ListIndex = 7

ComboBox1.AddItem "Au-dessus Centre"

'ListIndex = 8

ComboBox1.AddItem "Au-dessus Droite"

'ListIndex = 9

ComboBox1.AddItem "Au-dessous Gauche"

'ListIndex = 10

ComboBox1.AddItem "Au-dessous Centre"

'ListIndex = 11

ComboBox1.AddItem "Au-dessous Droite"

'ListIndex = 12

ComboBox1.AddItem "Centré"

'Utilisez une liste déroulante

ComboBox1.Style = fmStyleDropDownList

'Les valeurs de la zone de liste

'modifiable sont celles de la

'propriété ListIndex

ComboBox1.BoundColumn = 0

'Positionnez la zone de liste

'modifiable sur la première entrée

ComboBox1.ListIndex = 0

ComboBox1.Left = 18

ComboBox1.Top = 36

ComboBox1.Width = 90

ComboBox1.ListWidth = 90

'Initialisez le contrôle CommandButton1

CommandButton1.Left = 230

CommandButton1.Top = 36

CommandButton1.Height = 120

CommandButton1.Width = 120

'Remarque : Veillez à vous référer à un fichier

'bitmap présent dans votre

'Remarque : système et à inclure le chemin d’accès

'dans le nom de fichier.

CommandButton1.Picture = LoadPicture("c:\windows\argyle.bmp")

CommandButton1.PicturePosition = ComboBox1.Value

End Sub

Private Sub ComboBox1_Click()

Select Case ComboBox1.Value

Case 0  'Gauche Haut

CommandButton1.Caption = "Gauche Haut"

CommandButton1.PicturePosition = fmPicturePositionLeftTop

Case 1  'Gauche Centre

CommandButton1.Caption = "Gauche Centre"

CommandButton1.PicturePosition = fmPicturePositionLeftCenter

Case 2  'Gauche Bas

CommandButton1.Caption = "Gauche Bas"

CommandButton1.PicturePosition = fmPicturePositionLeftBottom

Case 3  'Droite Haut

CommandButton1.Caption = "Droite Haut"

CommandButton1.PicturePosition = fmPicturePositionRightTop

Case 4  'Droite Centre

CommandButton1.Caption = "Droite Centre"

CommandButton1.PicturePosition = fmPicturePositionRightCenter

Case 5  'Droite Bas

CommandButton1.Caption = "Droite Bas"

CommandButton1.PicturePosition = fmPicturePositionRightBottom

Case 6  'Au-dessus Gauche

CommandButton1.Caption = "Au-dessus Gauche"

CommandButton1.PicturePosition = fmPicturePositionAboveLeft

Case 7  'Au-dessus Centre

CommandButton1.Caption = "Au-dessus Centre"

CommandButton1.PicturePosition = fmPicturePositionAboveCenter

Case 8  'Au-dessus Droite

CommandButton1.Caption = "Au-dessus Droite"

CommandButton1.PicturePosition = fmPicturePositionAboveRight

Case 9  'Au-dessous Gauche

CommandButton1.Caption = "Au-dessous Gauche"

CommandButton1.PicturePosition = fmPicturePositionBelowLeft

Case 10 'Au-dessous Centre

CommandButton1.Caption = "Au-dessous Centre"

CommandButton1.PicturePosition = fmPicturePositionBelowCenter

Case 11 'Au-dessous Droite

CommandButton1.Caption = "Au-dessous Droite"

CommandButton1.PicturePosition = fmPicturePositionBelowRight

Case 12 'Centré

CommandButton1.Caption = "Centré"

CommandButton1.PicturePosition = fmPicturePositionCenter

End Select

End Sub


Liaison d'une feuille de calcul, exemple
AALiaison d’une feuille de calcul, exemple

L’exemple suivant utilise une plage de cellules d’une feuille de calcul dans un contrôle ListBox, et affiche l’index de ligne dans une cellule d’une autre feuille de calcul lorsque l’utilisateur sélectionne une ligne dans la liste. Le code utilise aussi les propriétés RowSource, BoundColumn et ControlSource.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle ListBox nommé ListBox1. Entrez des données dans les cellules A1:E4 de la feuille de calcul et assurez-vous que la cellule A6 ne contient aucune donnée.

Private Sub UserForm_Initialize()

ListBox1.ColumnCount = 5

ListBox1.RowSource = "a1:e4"

ListBox1.ControlSource = "a6"

'Place la propriété ListIndex dans la cellule a6

ListBox1.BoundColumn = 0

End Sub


Sélection de texte, propiétés, exemple
Sélection de texte, propriétés, exemple

L’exemple suivant effectue le suivi des propriétés associées à une sélection (SelLength, SelStart et SelText), qui varient chaque fois que l’utilisateur déplace le point d’insertion et étend la sélection à l’aide du clavier. Cet exemple utilise également les propriétés Enabled et EnterFieldBehavior.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle TextBox de grande taille nommé TextBox1,

•	trois contrôles TextBox nommés TextBox2 à TextBox4, dans une colonne.

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

TextBox2.Text = TextBox1.SelStart

TextBox3.Text = TextBox1.SelLength

TextBox4.Text = TextBox1.SelText

End Sub

Private Sub UserForm_Initialize()

TextBox1.MultiLine = True

TextBox1.EnterFieldBehavior = fmEnterFieldBehaviorRecallSelection

TextBox1.Text = "Tapez votre texte ici. " _

                 & "Appuyez sur les touches" _

                 & "CTRL+ENTRÉE pour commencer" _

                 & "une nouvelle ligne."

End Sub


Controls, collection, exemple

L’exemple suivant accède aux contrôles individuels de la collection Controls à l’aide d’une boucle For Each...Next. Lorsque l’utilisateur clique sur le contrôle CommandButton1, les autres contrôles sont placés dans une colonne le long du bord gauche de la feuille à l’aide de la méthode Move.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations du formulaire et vérifiez que celle-ci contient un contrôle CommandButton nommé CommandButton1 et plusieurs autres contrôles.

Dim CtrlHeight As Single

Dim CtrlTop As Single

Dim CtrlGap As Single

Private Sub CommandButton1_Click()

Dim MyControl As Control

CtrlTop = 5

For Each MyControl In Controls

If MyControl.Name = "CommandButton1" Then

'Ne déplace pas et

'ne redimensionne pas ce contrôle.

Else

' méthode Move utilisée avec

'des arguments nommés

MyControl.Move Top:=CtrlTop, Height:=CtrlHeight, Left:=5

' méthode Move utilisée avec

'des arguments non nommés (

'(gauche, haut, largeur, hauteur

'MyControl.Move 5, CtrlTop, ,CtrlHeight

'Calculez la coordonnée du haut pour le

'prochain contrôle

CtrlTop = CtrlTop + CtrlHeight + CtrlGap

End If

Next

End Sub

Private Sub UserForm_Initialize()

CtrlHeight = 20

CtrlGap = 5

CommandButton1.Caption = "Cliquez pour déplacer" _

  & "les contrôles"

CommandButton1.AutoSize = True

CommandButton1.Left = 120

CommandButton1.Top = CtrlTop

End Sub


Cycle, propriétés, exemple
Cycle, propriété, exemple

L’exemple suivant définit la propriété Cycle pour un contrôle Frame et deux objets Page d’un contrôle MultiPage.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	un contrôle Frame nommé Frame1,

•	un contrôle MultiPage nommé MultiPage1, contenant deux objets nommés Page1 et Page2,

•	deux contrôles CommandButton nommés CommandButton1 et CommandButton2.

Dans la feuille, le contrôle Frame et chaque objet Page du contrôle MultiPage, placez quelques contrôles pour visualiser la façon dont la propriété Cycle affecte l’ordre des tabulations des contrôles Frame et MultiPage.

L’utilisateur doit tabuler dans les contrôles pour observer la façon dont la propriété Cycle affecte l’ordre des tabulations. Si vous cliquez sur le contrôle CommandButton1, vous étendez l’ordre des tabulations pour inclure des contrôles dans le contrôle Frame et les objets Page. Si vous appuyez sur le contrôle CommandButton2, vous limitez l’ordre des tabulations.

Private Sub RestrictCycles()

'Limitez l’ordre des tabulations pour le contrôle

'Frame et les objets Page

    Frame1.Cycle = fmCycleCurrentForm

    MultiPage1.Page1.Cycle = fmCycleCurrentForm

    MultiPage1.Page2.Cycle = fmCycleCurrentForm

End Sub

Private Sub UserForm_Initialize()

RestrictCycles

End Sub

Private Sub CommandButton1_Click()

'Etendez les sous-feuilles de l’ordre des tabulations

' (contrôle Frame et objets Page)

    Frame1.Cycle = fmCycleAllForms

    MultiPage1.Page1.Cycle = fmCycleAllForms

    MultiPage1.Page2.Cycle = fmCycleAllForms

End Sub

Private Sub CommandButton2_Click()

RestrictCycles

End Sub


Move, méthode (Controls, collection), exemple

L’exemple suivant illustre le déplacement de tous les contrôles d’une feuille à l’aide de la méthode Move et de la collection Controls. L’utilisateur clique sur le contrôle CommandButton pour déplacer les autres contrôles.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient un contrôle CommandButton nommé CommandButton1 et plusieurs autres contrôles.

Private Sub CommandButton1_Click()

    'Déplacez chaque contrôle de la feuille de 25

    'points à droite et de 25 points vers le haut.

Controls.Move 25, -25

End Sub


Parent, propriété, exemple

L’exemple suivant utilise la propriété Parent pour désigner le contrôle ou la feuille contenant un contrôle spécifique.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d’une feuille et vérifiez que celle-ci contient :

•	deux contrôles Label nommés Label1 et Label2,

•	un contrôle CommandButton nommé CommandButton1,

•	un ou plusieurs autres contrôles de votre choix.

Dim MyControl As Object

Dim MyParent As Object

Dim ControlsIndex As Integer

Private Sub UserForm_Initialize()

    ControlsIndex = 0

    CommandButton1.Caption = _

      "Accédez au contrôle et à la propriété Parent"

    CommandButton1.AutoSize = True

    CommandButton1.WordWrap = True

End Sub

Private Sub CommandButton1_Click()

    'Traitez la collection Controls pour le projet

    'UserForm

    Set MyControl = Controls.Item(ControlsIndex)

    Set MyParent = MyControl.Parent

    Label1.Caption = MyControl.Name

    Label2.Caption = MyParent.Name

    'Préparez un index pour le prochain contrôle du

    'projet Userform

    ControlsIndex = ControlsIndex + 1

    If ControlsIndex >= Controls.Count Then

        ControlsIndex = 0

    End If

End Sub