Les boîtes de dialogue et les formulaires sont parmi les éléments les plus puissants et les plus emballés de VBA. Vous pouvez également contrôler différents événements qui se produisent lorsqu`un contrôle ActiveX est interagi. Par exemple, vous pouvez effectuer différentes actions, selon le choix qu`un utilisateur sélectionne à partir d`un contrôle de zone de liste, ou vous pouvez interroger une base de données pour recharger une zone combinée avec des éléments lorsqu`un utilisateur clique sur un bouton. Vous pouvez également écrire des macros qui répondent aux événements associés aux contrôles ActiveX. Lorsqu`un utilisateur du formulaire interagit avec le contrôle, votre code VBA s`exécute pour traiter tous les événements qui se produisent pour ce contrôle. Vous pouvez également inclure des graphiques SmartArt, des formes, des WordArt et des zones de texte sur votre formulaire. Vous pouvez redimensionner, faire pivoter, retourner, colorer et combiner ces objets pour créer des formes encore plus complexes. Lorsque vous tapez du texte directement dans un objet de zone de texte ou de forme, le texte devient une partie de cet objet — si vous tournez ou retournez l`objet, le texte pivote ou bascule avec. Contrairement aux contrôles ActiveX, vous pouvez affecter des attributs différents, tels que la taille de police et le style de police, aux mots et aux caractères individuels de l`objet. Vous pouvez également assigner des macros et ajouter des hyperliens à ces objets. Vous pouvez même lier du texte dans un objet de zone de texte ou de forme à une cellule de feuille de calcul et afficher dynamiquement les valeurs mises à jour dans ces objets. Excel peut générer automatiquement un formulaire de données intégré pour votre plage ou votre table.
Le formulaire de données affiche tous les en-têtes de colonne sous forme d`étiquettes dans une seule boîte de dialogue. Chaque étiquette a une zone de texte vide adjacente dans laquelle vous pouvez entrer des données pour chaque colonne, jusqu`à un maximum de 32 colonnes. Dans un formulaire de données, vous pouvez entrer de nouvelles lignes, Rechercher des lignes en naviguant ou (en fonction du contenu de la cellule) mettre à jour des lignes et supprimer des lignes. Si une cellule contient une formule, le résultat de la formule est affiché dans le formulaire de données, mais vous ne pouvez pas modifier la formule à l`aide du formulaire de données. Chaque formulaire est livré avec un X dans le coin supérieur droit qui permet à l`utilisateur de l`annuler. Lorsque vous transmettez une référence d`objet par valeur, la méthode reçoit une copie du pointeur vers l`objet. Ainsi, lorsque la vue modifie les valeurs de propriété sur le modèle, c`est le même objet. Comme les commentaires dans ce qui précède indiquent que le code se comporte différemment pour modal et MODELESS. Pour le premier il attend que le UserForm ferme et pour celui-ci continue. Un formulaire de feuille de calcul n`est pas la même chose qu`un modèle Excel. Un modèle est un fichier pré-formaté qui peut vous permettre de commencer à créer un classeur qui ressemble à la façon dont vous le souhaitez. Un formulaire contient des contrôles, tels que des boîtes ou des listes déroulantes, qui peuvent faciliter la saisie ou la modification des données par les personnes qui utilisent votre feuille de calcul.
Pour en savoir plus sur les modèles que vous pouvez télécharger, consultez modèles Excel. En utilisant UserForms, vous pouvez également utiliser la fonctionnalité de formulaire avancée,. Par exemple, vous pouvez ajouter par programme un bouton d`option distinct pour chaque lettre de l`alphabet ou vous pouvez ajouter une case à cocher pour chaque élément dans une grande liste de dates et de numéros. La valeur par défaut est de les afficher de manière modale; les formes modales sont au-dessus de tout le reste, et doivent être fermées avant de reprendre. Vous pouvez probablement faire un bâton de forme non modale sur le dessus avec une certaine tromperie Win32, aussi.