Visual Basic pour Applications (VBA) est un langage remarquable. Intégré à Microsoft Excel, ce langage peut être utilisé pour programmer des applications directement dans une feuille de calcul Excel.
C'est facilement accessible; vous n'avez besoin de rien de plus qu'une version fonctionnelle de Microsoft Office. Cela facilite le démarrage.
Nous allons parcourir la création d'une application Excel VBA. Cela va être simple mais couvrira quelques notions de base que vous pouvez utiliser pour créer des programmes plus compliqués dans Excel.
Certes, il existe d'autres langages de programmation largement utilisés pour créer des logiciels. VBA reste populaire grâce à l'utilisation généralisée d'Excel et à sa facilité de mise en route (vous n'avez besoin que d'Excel pour commencer).
VBA peut effectuer toutes sortes de tâches, telles que l'envoi d'e-mails à partir d'une feuille de calcul Excel ou la création de barres d'outils de macros personnalisées.
L'application VBA que vous allez créer est un simple formulaire de style de saisie de données qui prendra des entrées et produira une sortie pour vous. Vous allez écrire du code VBA pour effectuer un traitement sur l'entrée, tout comme un logiciel programmé.
Le programme va prendre un tas de texte et le convertir en un fichier de sortie HTML qui peut être copié dans un blog.
Si vous souhaitez un aperçu du langage avant d'écrire une application, envisagez un didacticiel pour débutant sur l'écriture de macros VBA dans Excel. Commençons !
Tout d'abord, choisissez un produit Office installé sur votre PC. Cela peut être Word, Excel, Powerpoint, Access ou tout autre.
Dans cet exemple, nous utiliserons Excel pour créer l'application. VBA est largement utilisé avec Excel en raison de la puissance supplémentaire qu'il confère aux feuilles de calcul. Pour commencer, vous allez devoir créer un bouton pour déclencher votre code.
Si vous utilisez Excel 2007 ou une version ultérieure, vous trouverez ces commandes dans le menu sous Développeur > Insérer . Trouvez le bouton de commande contrôle (sous Contrôles ActiveX ), et vous serez prêt à rouler.
Si vous ne voyez pas l'option de menu, voici comment ajouter l'onglet Développeur à Excel. C'est assez simple et vous n'avez besoin de le faire qu'une seule fois.
Cliquez dessus et dessinez un bouton de commande sur la feuille de calcul. Ce bouton lancera votre application.
Une autre approche serait d'écrire une macro qui lance automatiquement votre script lorsque vous ouvrez le fichier Excel, mais c'est un peu plus avancé. Pour l'instant, utilisons un bouton de commande.
Assurez-vous que le mode de conception la sélection est activée --- dans l'image ci-dessus, c'est l'icône triangle/règle/crayon. 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 que vous voulez 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 ce 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 dossier Forms avec le nom par défaut de UserForm1 .
Double-cliquez sur Feuille1 . C'est ici que vous écrivez le code qui s'exécutera lorsque vous cliquerez sur le bouton de commande.
Sur le panneau de droite, vous devriez voir le CommandButton1 sélectionné et CommandButton1_Click code déjà là. C'est ce qu'on appelle une fonction. Les fonctions VBA abritent le code VBA. Les fonctions sont d'une importance cruciale pour les langages de programmation et VBA ne fait pas exception.
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. Pour ce faire, tapez sur une seule ligne, Load UserForm1 .
Maintenant que votre programme est configuré pour se lancer au moment où vous cliquez sur le bouton de commande que vous avez créé, il est temps de concevoir l'application.
Pour concevoir le formulaire, faites un clic droit sur UserForm1 , et sélectionnez Afficher l'objet . Vous verrez le formulaire apparaître sur le côté droit de l'écran. Vous pouvez cliquer sur le formulaire et faire glisser la bordure pour le redimensionner comme vous le souhaitez.
À 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. Ce sont les composants de base d'une application VBA.
Vous allez créer une mise en page de base à l'aide de zones de texte et d'étiquettes.
Avec tous les formulaires, les Propriétés boîte vous permet d'ajuster les paramètres du formulaire. Vous souhaitez modifier la légende champ à quelque chose qui a du sens. Ce nom est la façon dont votre programme va référencer cet élément, alors choisissez quelque chose de clair et de logique.
Ce que vous avez déjà créé serait plus que suffisant pour la plupart des applications. Certains boutons de base permettent aux champs de texte d'interagir avec la feuille de calcul Excel.
Montons d'un cran. Il est temps de créer la partie de l'application qui générera un fichier sur votre ordinateur. Vous pouvez lire et écrire dans des fichiers en ajoutant ce qu'on appelle une "référence" à votre projet.
Une référence est un "add-on" qui vous permet d'écrire des commandes supplémentaires dans votre programme.
Vous pouvez généralement trouver la liste des références sous Outils dans la barre d'outils en sélectionnant Références . Pour la fonctionnalité d'E/S, faites défiler vers le bas et sélectionnez Microsoft Scripting Runtime .
Maintenant que les références sont là, créons un nouveau bouton. Dans la barre d'outils, créez un nouveau bouton de commande en cliquant simplement sur l'icône. Ce bouton générera la sortie lorsqu'il sera cliqué.
Remplacez la légende par Créer une sortie il est donc facile de se rappeler ce que fait le bouton.
En double-cliquant sur ce bouton, vous verrez la fonction de l'événement de clic sur le bouton. Ajoutons du code pour exécuter la sortie. Ce code peut sembler compliqué, mais il n'est vraiment pas mauvais une fois que vous l'avez décomposé.
Pour configurer la lecture et l'écriture de fichiers une fois que vous avez ajouté la référence, utilisez ce code :
Dim fso As New FileSystemObjectDim fnum
Dim MyFile en tant que chaîne
MonFichier ="c:\temp\OutputArticle.txt"
fnum =Freefile()
Qu'est-ce que cela fait? Eh bien, il configure MyFile comme chemin vers votre fichier de sortie dans lequel vous voulez écrire, et il crée fnum comme clé d'identification de fichier pour le code.
Enfin, vous connectez ces deux ensemble en tapant Open MyFile For Output as fnum. Vous avez votre connexion ouverte pour écrire dans le fichier en émettant Print #fnum commandes.
Ces impression Les commandes imprimeront le texte que vous placez après. Il y a du HTML de base dans certaines de ces déclarations, d'autres que vous remarquerez sont simplement des variables comme txt1stSection .
Ces variables sont liées aux zones de texte que vous avez créées dans l'UserForm.
Revenez au formulaire et remplissez tous les champs de texte sur l'écran principal de l'application.
Maintenant, quittez le mode "Conception", cliquez sur le bouton de sortie et ouvrez le fichier pour confirmer les résultats.
Effectivement, il y a le code Web formaté avec les balises HTML requises définies dans le programme. Tout le texte de ces champs de texte est imprimé et prêt à être copié dans un blog.
Avec seulement ces bases VBA, vous pouvez créer beaucoup plus.
Vous pouvez créer un formulaire de saisie simple pour la saisie de données qui génère les données dans un fichier CSV. Vous pouvez également écrire une application qui lit les informations d'un fichier texte, formate les informations, puis charge ces données dans une feuille de calcul.
Les possibilités ne sont vraiment limitées que par votre propre imagination en matière de VBA. Vous n'avez pas besoin d'acheter un package de développement coûteux comme Visual Studio. Ouvrez simplement n'importe quel programme MS Office, passez à l'éditeur VBA et vous pouvez créer des applications.
Pour en savoir plus sur VBA, il existe d'excellentes ressources pour apprendre les macros Excel et des conseils pour éviter certaines erreurs courantes lors de l'écriture de code Excel VBA.
VBA n'est pas limité aux systèmes Windows, les utilisateurs de Mac peuvent également écrire du code Excel VBA. Il n'y a pas de meilleur moment qu'aujourd'hui pour apprendre cette langue établie.