Votre AI Coding Assistant intégré à l'IDE VBA
Le code VBA est une extension inestimable de l'éditeur VBA. L'assistant de codage connaît votre code actuel, le document ou la base de données avec lequel vous travaillez et possède une connaissance approfondie des objets de l'application Office et de la syntaxe VBA. En utilisant ces informations, il fournit un menu extensible suggérant du code à ajouter. Il améliore à la fois votre connaissance de VBA et des objets impliqués ainsi que votre productivité globale de codage. Consultez la présentation des outils de codage supplémentaires plus bas.
Le Procedure Builder est démarré à partir de la barre d'outils Code VBA. Il insère le code chaufferie selon votre choix. Si nécessaire, il ajoute même un code de gestionnaire d'erreur qui permet à l'utilisateur de vous envoyer un e-mail donnant des détails sur ce qui s'est passé.
La barre d'outils Code VBA donne un accès logique aux éléments du langage VBA tels que les variables, la condition et la structure de boucle. Une prise en charge étendue est disponible pour les différents types d'interactions utilisateur telles que les boîtes de dialogue de message et de zone de saisie, de fichier, de dossier et de sélecteur de date dans le menu Boîte de dialogue.
Intellisense sensible au contexte Shift-SPACE ouvre un menu avec toutes les expressions qui renvoient le type requis, ici Chaîne. Il peut s'agir de variables disponibles, de fonctions intégrées ou de fonctions personnalisées disponibles dans la bibliothèque de code...
Le générateur d'appels de propriété pour définir une variable, ici une feuille de calcul, est démarré à partir d'un parent disponible, ici ThisWorkbook. Cela peut être fait à partir du menu Objet de la barre d'outils qui connaît toutes les variables disponibles localement.
Alternativement, vous pouvez insérer le nom de la variable objet et lancer l'insertion à l'aide d'Intellisense Shift-SPACE. Descendez la hiérarchie des menus pour sélectionner le code de votre tâche, en parcourant ici les lignes de la feuille de calcul.
Des lignes complètes, y compris le réglage de la valeur énumérée, peuvent être écrites de cette façon. Les propriétés couramment utilisées sont placées en haut du menu. La description résume en quoi consiste la propriété. Appuyez sur F1 pour accéder directement à la documentation en ligne.
Le Menu Application - ici Excel - est un point d'entrée principal donnant le code commun en haut, les méthodes et propriétés couramment utilisées
et les principales classes de l'application. En bas à gauche, vous verrez le générateur de code pour Workbooks.Open
après avoir cliqué sur l'élément de menu.
Présentation des générateurs de code
Dans la présentation ci-dessus, la plupart des exemples concernaient la génération de code générique, soit directement depuis le menu en cascade, soit, au cas où il y aurait plus de choix pour l'utilisateur, avec une boîte de dialogue générique vous permettant de spécifier quelles variables utiliser ou ajouter à votre code, qui énuméraient des constantes, si un paramètre est facultatif, etc. Il y a une description du code impliqué en haut, le bouton Aide en bas vous amène à la documentation officielle de VBA. Techniquement, ces boîtes de dialogue s'appuient sur une connaissance approfondie des bibliothèques de types de programmes Office.
Les éléments suivants présentent des boîtes de dialogue de générateur de code personnalisées et indiquent quand elles sont utilisées.
Boîtes de dialogue du générateur de code personnalisées
Générateur de boîte de saisie
Dans les diapositives ci-dessus, le générateur MsgBox a été présenté. De même, le Inputbox Builder ajoute du code pour étendre le comportement de base d'Inputbox consistant à obtenir les entrées d'un utilisateur. avec validation des données obtenues. Si par exemple un nombre est requis à la réception d'un nombre non numérique, il indiquera à l'utilisateur quel est le type requis et lui demandera de saisir une nouvelle valeur.
Générateur de formulaire utilisateur
Un type d'interaction utilisateur plus complet peut être obtenu avec les formulaires utilisateur, principalement dans Excel et Word. Le UserForm Builder facilite la création d'un formulaire utilisateur. avec contrôle des types choisis (texte, combo, cases à cocher). De plus, si l'utilisateur saisit une valeur d'un type incorrect dans le contrôle, appuyer sur le bouton OK entraîne l'envoi d'un message à l'utilisateur indiquant qu'une valeur de ce champ est incorrecte et ramène le curseur sur ce champ pour que l'utilisateur puisse la corriger.
Si et sélectionnez les générateurs et amp; Boucles
Les constructeurs qui prennent en charge le flux de code peuvent encore gagner du temps.
Tout d'abord, en utilisant le Code VBA intellisense Shift-SPACE après Si
,
un menu apparaît dans lequel vous pouvez sélectionner un ensemble de lignes approprié.
Deuxièmement, si vous avez sélectionné If Builder, lorsque vous réfléchissez aux conditions les plus appropriées, vous pouvez décider que Select Case here est plus approprié.
Concernant les boucles, cela fonctionne de la même manière, après Do
.
Générateur de chaînes multilignes
Pour coder une expression de chaîne qui combine des variables avec des chaînes, vous devez suivre le début et la fin des chaînes.
Le Générateur de chaînes multilignes
simplifie le codage de ces chaînes. Il sait quelles variables vous pouvez sélectionner et ajouter et interpréter les lignes suivantes comme vbNewLine
.
Constructeur SQL VBA
Le Builder SQL VBA vous permet de convertir une instruction SQL en une chaîne que vous pouvez utiliser dans VBA. L'utilisation de la variable strSQL assemblée en plusieurs parties rend le code plus facile à lire lorsqu'il concerne plusieurs lignes et vous aide à résoudre les conflits entre les guillemets doubles de votre SQL et les guillemets entourant la chaîne.
Générateur de jeux d'enregistrements MS Access
Le Recordset Builder facilite grandement la création de code pour ajouter, lire, mettre à jour ou parcourir des données dans votre Base de données MS Access utilisant DAO (ou ADO). En fonction de vos besoins, il propose du code pour ajouter, modifier ou supprimer un enregistrement sélectionné, ou pour parcourir une collection d'enregistrements.
Générateur de classes
Une façon sophistiquée d'améliorer votre code consiste à l'organiser à l'aide de classes personnalisées. Si vous adoptez cette approche, le Class Builder est un moyen très pratique de créer une classe avec des propriétés. Une fois créé, vous ajoutez les méthodes requises. Vous pouvez également utiliser le générateur de propriétés pour ajouter des classes supplémentaires. Les utilisateurs Access bénéficieront également de la fonctionnalité générer une classe à partir d'une table.
Générateur de dossiers
Le Folder Builder permet de créer du code spécifiant le répertoire dans lequel stocker les fichiers, en utilisant éventuellement des variables dans le processus de création de fichiers. Il est possible que le dossier que vous souhaitez utiliser n'existe pas encore. Pour vous en assurer, vous pouvez utiliser la fonction VBA MkDir, ou, s'il peut y avoir plusieurs niveaux dans les sous-dossiers, créez ces dossiers à l'aide de la fonction MakeDirMulti qui est inclus dans le module Code VBA modVBAFolderProcedures qui est automatiquement ajouté à votre projet si nécessaire.
Écrire vos propres générateurs de code
Le code VBA s'appuie en grande partie sur le langage VBA et sur ce que propose l'application Office en termes de fonctionnalités basées sur sa bibliothèque de types de classes. Considérez dans Excel combien de méthodes de calcul sont déjà disponibles via la classe WorksheetFunction ! Néanmoins, nous avons également trouvé pratique d'étendre VBA avec des fonctions communes, par ex. un ensemble de fonctions de manipulation de chaînes. Ceux-ci sont placés dans un sous-dossier de documents nommé Code VBA. Visitez Création et utilisation de fragments de code pour plus d'informations.
Outils de codage supplémentaires
Explorateur de codes
L'Explorateur de code remplace l'Explorateur de projet. Il affiche toutes les procédures de votre projet et vous permet de passer rapidement à la procédure sur laquelle vous devez travailler en utilisant une sélection par double-clic. De plus, il vous permet d'insérer la procédure sélectionnée à la position actuelle dans le code, de commenter le code, de sélectionner ou de supprimer des procédures, de ranger l'indentation du code, de faire glisser des procédures vers d'autres modules (déplacer) ou projets (copier).
Formatage du code / Bien rangé
L'indentation du code VBA bien rangée le rend beaucoup plus lisible et plus facile à déboguer. Lorsque Code VBA insère du code, son emplacement est déterminé par la position actuelle du curseur, il ne prend pas en compte le reste de la procédure. Pour cela, nous avons la fonctionnalité Code VBA 'Tidy indentation'. Avec la fonctionnalité Code VBA 'Tidy indentation', vous pouvez formater votre code automatiquement ou uniquement lorsque vous le demandez explicitement.
Code de commentaire
Si vous souhaitez que certaines lignes de code ne soient pas exécutées, mais que vous ne souhaitez pas les supprimer, vous pouvez les commenter. Pour cela, chaque ligne de code doit recevoir un guillemet simple ajouté au début. Faire cela pour plus de lignes est distrayant. Commenter les lignes de code VBA vous permet de le faire pour les lignes sélectionnées ou pour une procédure sélectionnée dans l'Explorateur de code.
Insérer facilement des noms
Un menu Noms spécial vous permet de récupérer plus facilement les noms de contrôles, d'étiquettes et de fichiers, ce qui vous fait gagner du temps dans la recherche. et copiez-collez-les.
Utilisation étendue de la fenêtre Immédiat
Découvrez ce que font les procédures en en les essayant dans la fenêtre Exécution avant de les inclure dans votre macro. Le code VBA vous permet d'insérer des procédures personnalisées ou prédéfinies et de les préremplir avec des exemples de chaînes et de nombres pour les essayer.
Bureautique
Utilisez l'automatisation pour que les applications Office fonctionnent ensemble, par ex. e-mails personnalisés (Outlook) de la base de données Access. Les références sont définies automatiquement, les liaisons anticipées et tardives sont prises en charge.