Comment créer votre propre application simple avec VBA

  • Mark Lucas
  • 0
  • 1144
  • 218
Publicité

Si vous avez suivi certains des articles de programmation que j'ai publiés ici au MUO, vous savez que j'ai une grande histoire d'amour avec VBA.

Ce n’est pas tant le langage que j’aime, bien que très intuitif, c’est l’accessibilité. Si vous utilisez déjà Microsoft Office, vous n'avez besoin de rien de spécial, mais les tâches que vous pouvez accomplir sont assez spéciales..

Parmi les bases déjà abordées, citons l'utilisation de VBA pour transmettre des informations. Transmettre toute information entre des applications VBA à l'aide du presse-papiers Transmettre toute information entre des applications VBA à l'aide du presse-papiers L'un des aspects les plus frustrants de l'utilisation de VBA dans des applications spécifiques est qu'il n'est pas toujours facile d'obtenir deux applications “parler” les uns aux autres. Vous pouvez essayer des transactions très rapides… en utilisant le presse-papier, comment envoyer des courriels à partir d'Excel Comment envoyer des courriels à partir d'une feuille de calcul Excel à l'aide de scripts VBA Comment envoyer des courriels à partir d'une feuille de calcul Excel à l'aide de scripts VBA Notre modèle de code vous aidera à configurer des courriels automatisés depuis Excel à l’aide de CDO (Collaboration Data Objects) et de scripts VBA. , et même comment créer un navigateur Internet avec VBA Comment créer votre propre navigateur Internet de base avec VBA Comment créer votre propre navigateur Internet de base avec VBA Lorsque vous vous arrêtez vraiment pour y penser, un navigateur Internet sous sa forme la plus simple vraiment cette application impressionnante. Je veux dire, oui, Internet est incroyable par rapport aux normes de quiconque. Le concept de liaison… .

Bien que de nombreux lecteurs aient trouvé ces articles utiles, dans certains cas, certains d'entre eux me connaissaient pour la première fois en matière de programmation - ils n'avaient jamais vu une ligne de code auparavant - et se plaignaient du fait que les instructions étaient encore trop compliquées à suivre..

Faire votre propre programme avec VBA

Donc, pour ceux d'entre vous qui aimeraient vraiment pouvoir écrire votre propre application VBA, mais qui n'ont jamais tapé une seule ligne de code auparavant, je vais vous guider dans la création de votre tout premier programme informatique. Ce programme n'est pas pour les experts en programmation ou même pour les codeurs moyennement qualifiés - c'est pour les débutants.

Ne me crois pas? Doutez-vous que vous ayez la capacité d'écrire un programme réel? Eh bien, je suis ici pour vous prouver que vous pouvez écrivez votre propre programme quand vous voulez, en utilisant VBA. Je vais ralentir et je ferai de mon mieux pour que ce soit simple. Prêt?

Créer le cadre de votre application

Tout d'abord, vous devez choisir parmi un produit Office existant déjà installé sur votre PC: Word, Excel, Powerpoint, Access ou tout autre. Dans cet exemple, je vais utiliser Excel pour créer mon application. La première étape consiste à accéder aux outils VBA en accédant à la barre d’outils et en cliquant sur “Vue”, puis “Barres d'outils” et alors “Boîte à outils de contrôle”.

J'étais sur un ordinateur avec une version légèrement plus ancienne d'Excel. Par conséquent, si vous utilisez Excel 2007 ou 2010, vous retrouverez les mêmes contrôles dans la liste déroulante. “Développeur” élément de menu, puis en cliquant sur “Insérer”. Ce que vous cherchez, c'est le contrôle du bouton de commande.

Cliquez dessus et tracez un bouton de commande sur la feuille de calcul. Dans Word ou d'autres applications MS, vous devrez placer le bouton à un endroit pratique. Le seul point du bouton est de lancer votre application. Une autre approche consiste à écrire une macro qui lance automatiquement votre script lorsque vous ouvrez le fichier Excel - mais cela dépasse le cadre de cet article. Pour l'instant, allons avec un bouton de commande.

Assurez-vous que le petit “Mode de conception” la sélection est “sur” - dans l'image ci-dessus, c'est l'icône triangle / règle / crayon. Ensuite, double-cliquez sur le bouton de commande que vous avez créé et l’éditeur de projet VBA s’ouvrira..

C'est la zone de développement où vous allez créer votre nouvelle application. La première chose à faire est de créer l’écran avant de votre application. Pour ce faire, faites un clic droit sur le projet déjà ouvert - dans mon cas, il s'appelle “VBAProject” qui est la valeur par défaut. Ensuite, sélectionnez “Insérer” et “UserForm”.

Votre formulaire utilisateur est maintenant chargé dans votre projet sous le “Formes” dossier avec le nom par défaut de “UserForm1”.

Double-cliquez sur “Feuille1”. C'est le “code” derrière la feuille de calcul où vous avez créé le bouton de commande. Sur le panneau de droite, vous devriez voir le “CommandButton1” sélectionné et “CommandButton1_Click” code déjà là.

Ceci s'appelle un “une fonction”, et c'est ce qui fonctionne lorsque vous cliquez sur le bouton de commande dans la fenêtre de la feuille de calcul.

Alors, que voulez-vous que votre bouton de commande fasse lorsque vous cliquez dessus? Vous voulez qu'il charge le formulaire utilisateur que vous venez de créer. Vous faites cela en tapant une seule ligne, “Charger UserForm1”.

Maintenant que votre programme est configuré pour démarrer au moment où vous cliquez sur le bouton de commande que vous avez créé, il est temps de concevoir votre application réelle..

D'abord, vous voudrez concevoir à quoi ressemblera le programme. Dans mon cas, je veux écrire un programme avec des champs de texte et des boutons. Le programme va prendre un tas de texte, et quand je clique sur un bouton, il va convertir tout le texte brut dans un fichier de sortie HTML que je peux copier dans mon blog en tant qu'article parfaitement formaté..

Pour concevoir le formulaire, cliquez avec le bouton droit de la souris sur “UserForm1”, et sélectionnez “Objet de vue”. Vous verrez le formulaire lui-même apparaître sur le côté droit de l'écran. Vous pouvez cliquer sur le formulaire et faire glisser les bordures pour le redimensionner à votre guise.

À l'aide de la boîte à outils Contrôles, vous pouvez ajouter des champs de texte, des étiquettes et des boutons de commande à votre formulaire. Si vous voulez vraiment faire preuve de créativité, vous trouverez également des cadres, des cases à cocher et des cases à cocher, des listes déroulantes et bien plus encore. Ce sont les composants de base de la plupart des applications de base là-bas.

Si la boîte à outils ne s'affiche pas, vous pouvez la trouver sous les icônes de la barre d'outils dans le menu principal de l'éditeur. Lorsque vous la survolez, vous verrez le mot “boîte à outils” apparaitre. Il suffit de faire glisser chaque composant souhaité dans votre fiche et de lui donner l’air que vous souhaitez..

Lorsque vous placez chacun dans votre formulaire, faites très attention à la “Propriétés” boîte pour cet article. Vous voulez éditer le “(Prénom)” champ à quelque chose qui a du sens pour ce que vous utilisez, parce que ce nom est comment votre programme va faire référence à cet élément. Faites-en quelque chose de clair et logique.

Ajout de fonctionnalités intéressantes

Ce que vous avez déjà créé serait largement suffisant pour la plupart des applications. Vous pouvez cliquer sur des boutons et faire en sorte que les champs de texte interagissent avec la feuille de calcul Excel ou le document Word dans lequel vous avez créé l'application. Cependant, ce que nous faisions aujourd’hui, c’est essayer de créer une application qui puisse être utilisée en dehors de l’application Office. Dans mon cas, je veux créer une sortie dans un fichier sur mon ordinateur. Vous pouvez lire et écrire dans des fichiers en ajoutant ce qu'on appelle un “Référence” à votre projet.

Une référence est une sorte de “Ajouter” cela vous permet d'écrire dans votre programme des commandes supplémentaires que vous ne pourriez pas autrement sans la référence. Vous pouvez généralement trouver la liste des références sous “Outils” dans la barre d’outils et en sélectionnant “Références”. Pour la fonctionnalité d’E / S sur fichier, faites simplement défiler vers le bas et sélectionnez “Microsoft Scripting Runtime”.

Dans votre programme, vous pouvez accéder à tous les composants que vous avez créés sur votre formulaire en saisissant des éléments tels que textbox1.text, commandbutton1.caption, afin d'accéder aux informations contenues dans cet objet (comme le texte dans un champ de texte) ou changement cette information.

Dans mon cas, je veux le “Créer une sortie” bouton pour extraire tout le texte de tous les champs que j'ai créé, puis les écrire dans un fichier de sortie, formaté de manière spéciale.

En cliquant sur ce bouton, je vois le code de l'événement click du bouton. Le code ci-dessous peut paraître compliqué si vous n’avez jamais utilisé VBA auparavant, mais c’est vraiment pas mal si vous le regardez ligne par ligne..

Pour configurer la lecture et l'écriture de fichiers une fois que vous avez ajouté la référence, vous pouvez facilement le configurer en tapant les lignes suivantes:

Dim fso As New FileSystemObject Dim fnum Dim MyFile en tant que String MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

Qu'est-ce que cela fait? Eh bien, ça se met en place “Mon fichier” comme le chemin de votre fichier de sortie que vous voulez écrire, et il crée “fnum” comme identification du fichier “clé” pour le code. Enfin, vous connectez ces deux ensemble en tapant “Ouvrez MyFile For Output en tant que fnum” - et bam, vous avez votre connexion ouverte pour écrire dans le fichier tout ce que vous voulez en émettant Imprimer #fnum, text commandes, comme indiqué ci-dessous.

Voir les références ci-dessus à des choses comme txtHeaderImage et txt1stSection? Celles-ci devraient en fait être txtHeaderImage.text, mais avec VBA, vous pouvez utiliser des raccourcis comme celui-ci - en laissant de côté .text dans le cas d'éléments comme des champs de texte, et votre programme fonctionnera toujours..

Une fois que j’ai terminé d’imprimer le texte contenu dans tous les champs de texte de l’écran principal de l’application, tout ce que je devais faire pour texte était de revenir en arrière. “Conception” en mode, cliquez sur les boutons, puis allez voir à quoi ressemble le fichier de sortie.

Effectivement, il y avait mon code Web, tous mis en forme avec les balises HTML requises que j'ai définies dans mon programme, et tout le texte de ces champs de texte placés là où ils étaient censés aller.

Si vous y réfléchissez, vous pouvez faire n'importe quoi avec une application comme celle-ci. Vous pouvez créer un simple formulaire de saisie pour la saisie des données, qui les exporte ensuite dans un fichier CSV ou directement dans la feuille de calcul Excel en arrière-plan. Vous pouvez écrire une application qui lit des informations dans un fichier texte, les formate ou effectue des calculs, puis charge ces données dans un tableur..

Les possibilités ne sont vraiment limitées que par votre propre imagination en matière de VBA. Vous n'avez pas à acheter un package de développement coûteux tel que Visual Studio - ouvrez simplement n'importe quel programme MS Office, passez à l'éditeur VBA et vous êtes un programmeur instantané..

Avez-vous essayé de créer votre propre application VBA? Était-ce aussi difficile que vous le pensiez? Êtes-vous un programmeur VBA habituel au travail ou à la maison? Partagez vos pensées et vos idées sur votre amour pour VBA dans la section commentaires ci-dessous.

Crédit d'image: Photo de l'ordinateur via Shutterstock




Personne n'a encore commenté ce post.

De la technologie moderne, simple et abordable.
Votre guide dans le monde de la technologie moderne. Apprenez à utiliser les technologies et les gadgets qui nous entourent chaque jour et à découvrir des choses intéressantes sur Internet.