le langage de script de Microsoft Excel, Visual Basic, non seulement augmente la fonctionnalité d'Excel, mais aussi peut faire que des fonctionnalités faciles à utiliser - à travers des formes d'utilisation. Les formulaires utilisateurs sont de petites fenêtres que les utilisateurs peuvent entrer des données de feuille de calcul à travers . Création du formulaire
commencer à créer un formulaire utilisateur en entrant le Visual Basic IDE ( environnement de développement intégré ) : à partir de la feuille de calcul Excel , appuyez sur "alt" - "F11" . Créer un nouveau formulaire utilisateur en accédant à " Insertion"> " UserForm "
Faites glisser et déposez les commandes suivantes à partir de la boîte à outils sur la forme: . Deux zones de texte , le second en dessous de la première . Ajouter un bouton de commande ci-dessous les zones de texte , et deux contrôles label , chacun à gauche d'une zone de texte. Dans la fenêtre des propriétés , changez la légende de l'étiquette supérieure à «nom» et la légende de l'étiquette inférieure à « adresse e-mail. " Changer la légende du bouton pour «Soumettre».
Entrez le code
maintenant écrire le code qui récupère des données de la forme et l'insère dans une feuille de calcul .
de la fenêtre du concepteur de formulaire, double- cliquez sur le bouton «Soumettre». . Le curseur passe à l'événement Button1_Click , qui se déclenche lorsque le bouton est cliqué pendant l'exécution du programme
En cas Button1_Click , entrez le code de programme suivant:
r As Range
< p> Set r = Range (" A65536 " ) . End ( xlUp )
Set r = r.Offset (1, 0)
r.Value = Textbox1.Value
< p> Set r = r.Offset (0, 1 ) r.Value = TextBox2.Value - ----------------------------- -----------
écrire un petit sous-programme qui affiche la nouvelle forme de l'utilisateur. A l'intérieur de l'IDE , double- cliquez sur l'icône ThisWorkbook dans le volet projet . Dans la fenêtre de code, entrer dans ce nouveau sous-programme :
Public Sub mac1 () UserForm1.Show
End Sub
Exécutez le programme à partir de la feuille de calcul Excel en allant au développeur> macros , en sélectionnant " mac1 , " et en appuyant sur le bouton "Exécuter" . Entrez des données de feuille de calcul avec votre formulaire utilisateur.
Explorez le Programme
La première ligne de Button1_Click déclare une variable de portée . Une gamme est un ensemble de cellules de feuille de calcul . Vous entrez des données dans cette gamme avec le code suivant l'instruction Dim
La déclaration Set r = Range (" A65536 " ) Fin ( xlUp ) définit une plage d'une cellule : . . La cellule la plus à gauche de l' rangée précédente de données. Ce n'est pas une pièce d'aspect intuitif de code, alors ne vous inquiétez pas si vous ne comprenez pas au premier coup d'œil. Cassez la déclaration de voir comment cela fonctionne . Le Range (" A65536 " ) partie spécifie clairement la cellule A65536 - chemin au bas de la première colonne de la feuille de calcul . La pièce suivante, End ( xlUp ) , est une autre gamme : c'est l'endroit où votre curseur se retrouverait si vous l'aviez initialement sur la cellule A65536 , appuyé sur la touche de fin , puis appuyé sur la flèche vers le haut
Si vous étiez . pour entrer des données à cette cellule , vous feriez écraser la rangée précédente. C'est pourquoi vous avez besoin de l'instruction suivante : Set r = r.Offset (1, 0) . Cette déclaration redéfinit la gamme à être une ligne vers le bas ( et zéro colonnes à droite ) d'où il était . La gamme "r" est maintenant dans la première cellule vide ci-dessous toutes les lignes de données existantes . C'est là que votre code peut commencer à entrer une nouvelle ligne de données.
De remplissage de données cellulaires du formulaire d'entrée
Les prochaines déclarations déplacer les données d'un formulaire à la gamme votre code juste identifié que les premières cellules vides en dessous de la ligne de données précédente . r.Value = Textbox1.Value définit la valeur de la cellule vide avec la valeur de la première zone de texte. La cellule suivante est une colonne vers la droite , et Set r = r.Offset (0, 1 ) redéfinit la plage à cette cellule. Les arguments 0 et 1 se réfèrent à 0 lignes vers le bas et 1 cellule à droite de ( "r") l'emplacement de la gamme précédente .
Remplissant les deux colonnes achève une ligne de données . Lorsque l'utilisateur clique sur le bouton , l'événement Button1_Click sera exécuté de nouveau . L'ensemble R = Range (" A65536 " ) . End ( xlUp ) sera de nouveau correctement définir la plage de la nouvelle ligne.