Comment créer un formulaire de saisie automatique de données dans Excel VBA

L'utilisation de formulaires dans VBA vous donne une toile vierge pour concevoir et organiser des formulaires en fonction de vos besoins à tout moment. Apprenons avec Download.vn comment créer des formulaires de saisie automatique de données dans Excel VBA !

Comment créer un formulaire de saisie automatique de données dans Excel VBA

Créer un formulaire utilisateur à l'aide d'Excel VBA

Ouvrez un nouveau classeur Excel et effectuez quelques étapes préliminaires avant de commencer à créer le formulaire de saisie de données.

Enregistrez le classeur sous le nom souhaité, n'oubliez pas de changer le type de fichier en Excel Macro-Enabled Workbook.

Ajoutez 2 feuilles à ce classeur avec les noms suivants :

  1. Feuille1 : Accueil
  2. Fiche 2 : Base de données des étudiants

Comment créer un formulaire de saisie automatique de données dans Excel VBA

Bien entendu, vous pouvez modifier leurs noms à votre guise.

Dans la feuille Accueil , ajoutez un bouton de contrôle de macro de formulaire utilisateur. Accédez à l' onglet Développeur > cliquez sur Bouton dans la liste déroulante Insérer . Placez ce bouton n'importe où sur la feuille de calcul.

Comment créer un formulaire de saisie automatique de données dans Excel VBA

Après avoir placé le bouton, renommez-le. Faites un clic droit dessus > cliquez sur Nouveau pour joindre une macro qui affiche le formulaire.

Entrez le code suivant dans la fenêtre de l'éditeur :

Sub Button1_Click()
UserForm.Show
End Sub

Une fois la feuille d'accueil et la base de données des étudiants prêtes, il est temps de concevoir le formulaire utilisateur. Accédez à l' onglet Développeur > cliquez sur Visual Basic pour ouvrir l'éditeur . Vous pouvez également appuyer sur ALT+F11 pour ouvrir la fenêtre de l'éditeur.

Cliquez sur l' onglet Insertion et sélectionnez UserForm . Un formulaire utilisateur est prêt à être utilisé. Une boîte à outils d'accompagnement s'ouvre avec ce formulaire, contenant tous les outils nécessaires à la conception de la mise en page.

Comment créer un formulaire de saisie automatique de données dans Excel VBA

Dans cette boîte à outils, sélectionnez Cadre . Faites-le glisser vers le formulaire utilisateur et redimensionnez-le.

Dans (nom) , vous pouvez changer le nom de ce cadre. Pour afficher le nom sur le front-end, vous pouvez modifier le nom dans la colonne Légende .

Ensuite, sélectionnez Étiquette dans la boîte à outils et insérez 2 autocollants dans cette boîte. Renommez le premier nom en Numéro de demande et le deuxième nom en Numéro d'étudiant .

Appliquez le même processus de changement de nom via Caption in Properties . Assurez-vous de sélectionner l'étiquette correspondante avant de la renommer.

Ensuite, insérez 2 zones de texte dans la zone d'autocollant. Ils seront utilisés pour capturer les entrées des utilisateurs. Modifiez les noms des 2 zones de texte via la colonne (Nom) dans Propriétés comme suit :

  • Textbox1 : txtApplicationNo
  • Zone de texte2 : txtStudentID

Concevoir un cadre d'information sur les étudiants

Insérez un cadre vertical et ajoutez 10 étiquettes et 10 zones de texte. Renommez l'étiquette comme suit :

  • Etiquette3 : Nom
  • Etiquette4 : Âge
  • Etiquette5 : Adresse
  • Etiquette6 : Téléphone
  • Label7 : Ville
  • Libellé8 : Pays
  • Etiquette9 : Date de naissance
  • Etiquette10 : Code postal
  • Libellé11 : Nationalité
  • Libellé12 : Genre

Insérez la zone de texte correspondante à côté de ces étiquettes, en l'insérant à partir de deux cases d'option de la boîte à outils du formulaire utilisateur à côté de l'étiquette de sexe. Changez leurs noms en Homme et Femme (avec personnalisé) respectivement.

Concevoir un cadre de cours détaillé

Ajoutez un autre cadre verticalement et insérez 6 autocollants, 6 zones de texte correspondant à chaque étiquette. Renommez l'autocollant comme suit :

  • Libellé13 : Nom du cours
  • Libellé14 : ID du cours
  • Étiquette15 : Date de début d'inscription
  • Étiquette16 : Date de fin d'inscription
  • Libellé17 : Durée des cours
  • Label18 : Département

Concevoir un cadre de détail de paiement

Insérez un nouveau cadre, ajoutez une nouvelle étiquette et renommez-la « Voulez-vous mettre à jour les détails du paiement ? » Insérez 2 boutons d'option ; renommez-les en Yes et No .

De même, ajoutez un nouveau cadre contenant 2 étiquettes supplémentaires et 2 zones de liste déroulante. Renommez l'étiquette comme suit :

  • Libellé19 : Paiement reçu
  • Label20 : Mode de paiement

Conception du tableau de navigation

Dans le dernier cadre, ajoutez 3 boutons de la boîte à outils, contenant le code pour déployer les formulaires. Renommez les boutons comme suit :

  • Bouton 1 : Enregistrer les détails
  • Button2 : Effacer le formulaire
  • Bouton3 : Quitter

Comment créer un formulaire de saisie automatique de données dans Excel VBA

Écrire le code du formulaire automatique : Bouton pour enregistrer les informations

Double-cliquez sur le bouton Enregistrer les détails . Dans le module suivant, insérez le code suivant :

Private Sub CommandButton2_Click()

‘declare the variables used throughout the codes
Dim sht As Worksheet, sht1 As Worksheet, lastrow As Long

'Add validations to check if character values are being entered in numeric fields.
If VBA.IsNumeric(txtApplicationNo.Value) = False Then
MsgBox "Only numeric values are accepted in the Application Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtStudentID.Value) = False Then
MsgBox "Only numeric values are accepted in the Student ID", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtAge.Value) = False Then
MsgBox "Only numeric values are accepted in Age", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtPhone.Value) = False Then
MsgBox "Only numeric values are accepted in Phone Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(Me.txtCourseID.Value) = False Then
MsgBox "Only numeric values are accepted in Course ID", vbCritical
Exit Sub
End If

'link the text box fields with the underlying sheets to create a rolling database
Set sht = ThisWorkbook.Sheets("Student Database")

'calculate last populated row in both sheets

lastrow = sht.Range("a" & Rows.Count).End(xlUp).Row + 1

'paste the values of each textbox into their respective sheet cells

With sht
.Range("a" & lastrow).Value = txtApplicationNo.Value
.Range("b" & lastrow).Value = txtStudentID.Value
.Range("c" & lastrow).Value = txtName.Value
.Range("d" & lastrow).Value = txtAge.Value
.Range("e" & lastrow).Value = txtDOB.Value
.Range("g" & lastrow).Value = txtAddress.Value
.Range("h" & lastrow).Value = txtPhone.Value
.Range("i" & lastrow).Value = txtCity.Value
.Range("j" & lastrow).Value = txtCountry.Value
.Range("k" & lastrow).Value = txtZip.Value
.Range("l" & lastrow).Value = txtNationality.Value
.Range("m" & lastrow).Value = txtCourse.Value
.Range("n" & lastrow).Value = txtCourseID.Value
.Range("o" & lastrow).Value = txtenrollmentstart.Value
.Range("p" & lastrow).Value = txtenrollmentend.Value
.Range("q" & lastrow).Value = txtcourseduration.Value
.Range("r" & lastrow).Value = txtDept.Value

End With
sht.Activate

'determine gender as per user's input
If optMale.Value = True Then sht.Range("g" & lastrow).Value = "Male"
If optFemale.Value = True Then sht.Range("g" & lastrow).Value = "Female"
'Display a message box, in case the user selects the Yes radio button

If optYes.Value = True Then
MsgBox "Please select the payment details below"
Else:
Exit Sub

End If

End Sub

Explication du code dans le formulaire automatisé :

Les zones de texte incluent du texte et des valeurs numériques, vous devez donc limiter la saisie de l'utilisateur. Le numéro de candidature, la carte d'étudiant, l'âge, le téléphone, l'identifiant du cours et la durée du cours ne contiendront que des chiffres, le reste contiendra du texte.

À l'aide de la commande IF , le code déclenche une fenêtre contextuelle d'erreur si l'utilisateur saisit un caractère ou une valeur de texte dans un champ numérique.

Puisqu'il existe une validation des erreurs, vous devez lier les zones de texte aux cellules de la feuille de calcul.

Les variables lastrow calculent la dernière ligne remplie et stockent la valeur à l'intérieur pour une utilisation flexible.

Enfin, ces valeurs sont collées dans la zone de texte de la feuille Excel liée.

Coder le formulaire effacer et bouton quitter

Dans le bouton Effacer , vous devez écrire du code qui efface les valeurs actuelles du formulaire de l'utilisateur comme suit :

With Me
.txtApplicationNo.Value = ""
.txtStudentID.Value = ""
..txtName.Value = ""
.txtAge.Value = ""
.txtAddress.Value = ""
.txtPhone.Value = ""
.txtCity.Value = ""
.txtCountry.Value = ""
.txtDOB.Value = ""
.txtZip.Value = ""
.txtNationality.Value = ""
.txtCourse.Value = ""
.txtCourseID.Value = ""
.txtenrollmentstart.Value = ""
.txtenrollmentend.Value = ""
.txtcourseduration.Value = ""
.txtDept.Value = ""
.cmbPaymentMode.Value = ""
.cmbPayment.Value = ""
.optFemale.Value = False
.optMale.Value = False
.optYes.Value = False
.optNo.Value = False

End With

Dans le bouton Quitter , saisissez le code suivant dans le formulaire utilisateur :

Private Sub CommandButton5_Click()
Unload Me
End Sub

Dans la dernière étape, vous devez saisir les derniers morceaux de code pour créer les valeurs déroulantes de la zone de liste déroulante (dans le cadre de paiement).

Private Sub UserForm_Activate()

With cmbPayment
.Clear
.AddItem ""
.AddItem "Yes"
.AddItem "No"
End With
With cmbPaymentMode

.Clear
.AddItem ""
.AddItem "Cash"
.AddItem "Card"
.AddItem "Check"
End With
End Sub

Ci-dessus, comment créer un formulaire de saisie automatique de données dans Excel VBA . J'espère que l'article vous sera utile.

Sign up and earn $1000 a day ⋙

Comment faire en sorte que Google Maps emprunte un itinéraire spécifique

Comment faire en sorte que Google Maps emprunte un itinéraire spécifique

Avec Google Maps, vous pouvez visiter de nouveaux endroits sans craindre de vous perdre. Tout ce que vous avez à faire est d'entrer votre lieu de départ et votre destination,

Comment afficher le numéro de téléphone de quelquun dans Telegram

Comment afficher le numéro de téléphone de quelquun dans Telegram

Lors de l'enregistrement d'un compte auprès de Telegram, vous devez ajouter un numéro de téléphone à vos informations personnelles. Si vous êtes curieux de confirmer celui de quelqu'un d'autre

Comment tout sélectionner dans CapCut

Comment tout sélectionner dans CapCut

Bien qu'il soit créé par la société mère de TikTok, CapCut offre bien plus de contrôle sur une vidéo que TikTok. Vous pouvez utiliser les excellents outils d'édition de CapCut pour

Comment flouter larrière-plan avec zoom

Comment flouter larrière-plan avec zoom

Si vous préférez préserver votre vie privée en cachant l'espace derrière vous pendant les appels Zoom, il peut être dans votre intérêt d'utiliser le flou de Zoom.

Comment afficher des images dAmazon Photos sur Echo Show

Comment afficher des images dAmazon Photos sur Echo Show

Découvrez comment transformer votre Amazon Echo Show en cadre photo numérique avec Amazon Photos dans ce guide.

Comment faire de Chrome le navigateur par défaut

Comment faire de Chrome le navigateur par défaut

Vous avez la possibilité de faire de Chrome votre navigateur par défaut lorsque vous l'utilisez pour la première fois. Si vous ignorez l'invite, vous pouvez toujours utiliser le navigateur

Comment créer un formulaire de commande en ligne

Comment créer un formulaire de commande en ligne

Un formulaire de commande en ligne aide les entreprises à recevoir les commandes de leurs clients sans tracas. Avec un bon de commande, les clients peuvent passer des commandes de produits, faire

Comment réparer AnyDesk continue de déconnecter les problèmes

Comment réparer AnyDesk continue de déconnecter les problèmes

En matière de simplicité, de sécurité et de fonctionnalités, AnyDesk est devenu un succès instantané pour le partage de bureau sans latence, dépassant rapidement TeamViewer. Si tu

Comment activer ou désactiver les sous-titres sur YouTube TV

Comment activer ou désactiver les sous-titres sur YouTube TV

YouTube propose aux téléspectateurs plusieurs fonctionnalités d'accessibilité pour améliorer leur expérience de visionnage. Deux d’entre eux sont des sous-titres et des sous-titres codés. Avec récent

Comment utiliser le conteneur de transfert dans Starfield

Comment utiliser le conteneur de transfert dans Starfield

Un élément clé de vos voyages interstellaires dans Starfield est l’excitation de construire des avant-postes sur des mondes extraterrestres. Les ressources que vous pouvez en tirer

Comment acheter en pré-commercialisation dans Robinhood

Comment acheter en pré-commercialisation dans Robinhood

Vous avez fait vos recherches, pris votre décision et souhaitez investir dans une action, mais les marchés ne sont pas encore ouverts. Heureusement, ce n'est pas un problème car

Comment réparer les mises à jour dapplications sur Google Play bloquées en attente

Comment réparer les mises à jour dapplications sur Google Play bloquées en attente

Le téléchargement d'applications depuis le Google Play Store devrait être un processus simple. Cependant, les utilisateurs peuvent parfois rencontrer un problème lorsque la note sur le

Comment rechercher vos conversations ChatGPT

Comment rechercher vos conversations ChatGPT

Si vous utilisez fréquemment ChatGPT pour démystifier toutes vos requêtes, vous pourriez trouver l'incapacité de rechercher dans vos conversations précédentes une déception majeure.

Comment afficher les informations cachées sur Facebook Marketplace

Comment afficher les informations cachées sur Facebook Marketplace

Facebook Marketplace est une excellente plateforme à utiliser si vous souhaitez vendre certains de vos biens inutilisés ou si vous cherchez à acheter quelque chose. Mais ça peut

Comment activer la connexion Wi-Fi sur un téléviseur LG

Comment activer la connexion Wi-Fi sur un téléviseur LG

Un téléviseur LG est votre passerelle vers plus de 100 programmes. Le contenu va des chaînes d’information et de sport aux films et séries télévisées tendances. Vous pouvez regarder du contenu depuis

Comment retrouver vos anciens messages Skype

Comment retrouver vos anciens messages Skype

Si vous utilisez Skype pour le travail, il y a de fortes chances qu'il arrive un moment où vous devrez vérifier quelque chose dans votre historique de discussion. Lorsque vous essayez de localiser le

Comment réparer un écran noir sur une tablette Fire

Comment réparer un écran noir sur une tablette Fire

Les tablettes Amazon Fire se distinguent dans cette catégorie d'appareils grâce à leurs excellentes fonctionnalités et leurs prix attractifs. Mais même si les techniciens peuvent les féliciter,

Comment déconnecter un clavier Bluetooth dun Mac

Comment déconnecter un clavier Bluetooth dun Mac

Les ordinateurs Mac sont populaires parmi les travailleurs de nombreux domaines en raison de leur design élégant et de leurs capacités avancées. Ils sont dotés de nombreuses fonctionnalités qui peuvent être

WordPress : comment ajouter une vidéo YouTube

WordPress : comment ajouter une vidéo YouTube

Vous cherchez à ajouter ou à intégrer des vidéos YouTube à votre site ou page WordPress ? Notre guide détaillé vous guidera étape par étape tout au long du processus.

WordPress : comment personnaliser la barre latérale avec des widgets

WordPress : comment personnaliser la barre latérale avec des widgets

Apprenez à modifier la barre latérale de votre site Web WordPress pour placer du contenu important et pour une meilleure expérience de navigation.