QCM : Programmation en VBA (39 questions)

Questions et réponses du QCM

1. Quelle est l’origine du VBA et comment s’intègre-t-il à une application ?

Microsoft l’a créé dans les années 90 comme langage autonome remplaçant les applications hôtes.
Microsoft l’a créé dans les années 80 comme extension de Visual Basic intégrée à une application hôte.
Microsoft l’a créé dans les années 90 comme extension de Visual Basic intégrée à une application hôte.
LibreOffice l’a créé dans les années 90 comme extension de Visual Basic intégrée à une application hôte.

Microsoft l’a créé dans les années 90 comme extension de Visual Basic intégrée à une application hôte.

Explication

Le VBA a été créé par Microsoft dans les années 90 comme une extension de Visual Basic intégrée à une application hôte. Le choix d’un langage autonome ne correspond pas à cette intégration à une application.

2. Une équipe souhaite ajouter des fonctionnalités à l’application qu’elle utilise en automatisant certaines tâches avec du VBA. Quel rôle du VBA correspond à cet objectif ?

Transférer les fonctionnalités de l’application vers un autre logiciel hôte.
Remplacer l’application hôte par un environnement de programmation indépendant.
Étendre les fonctionnalités de l’application dans laquelle il est intégré.
Modifier le langage de programmation utilisé pour créer l’application hôte.

Étendre les fonctionnalités de l’application dans laquelle il est intégré.

Explication

Le VBA sert à étendre les fonctionnalités de l’application dans laquelle il est intégré. Remplacer l’application hôte par un environnement indépendant décrit un rôle différent.

3. Qu’appelle-t-on une macro dans le contexte du VBA ?

Un programme écrit en VBA.
Une variable qui conserve une valeur pendant l’exécution.
Un module qui stocke plusieurs programmes sans code exécutable.
Une application hôte dans laquelle le code VBA est intégré.

Un programme écrit en VBA.

Explication

Une macro est un programme écrit en VBA. Un module peut stocker des macros, mais il ne désigne pas à lui seul un programme particulier.

4. Une macro écrite pour une application est stockée dans un module. Dans quelles conditions peut-elle être exécutée ?

Depuis l’application pour laquelle elle a été écrite.
Depuis toute application capable d’ouvrir le module qui la contient.
Depuis une autre application hôte utilisant un langage similaire.
Depuis un éditeur de code, même sans l’application prévue.

Depuis l’application pour laquelle elle a été écrite.

Explication

Les macros sont stockées dans des modules et leur exécution dépend de l’application pour laquelle elles ont été écrites. Un langage similaire dans une autre application ne suffit pas à rendre la macro exécutable depuis celle-ci.

5. Pendant l’exécution d’un programme, une valeur mémorisée peut être modifiée. Quel concept désigne cet objet en mémoire ?

Une variable.
Un module.
Une macro.
Une constante.

Une variable.

Explication

Une variable est un objet stocké en mémoire dont le contenu peut changer pendant l’exécution. Une constante est un distracteur plausible, mais son contenu ne correspond pas à cette propriété de modification.

6. Dans un programme VBA comportant Option Explicit, que doit faire le programmeur avant d’utiliser une variable ?

La déclarer.
La stocker dans un module distinct.
L’affecter à une constante.
La déclarer au début d’une autre macro.

La déclarer.

Explication

Avec Option Explicit, chaque variable doit être déclarée avant d’être utilisée. L’affecter à une constante ne remplace pas cette déclaration préalable.

7. Une macro doit partager une variable avec toutes les autres macros du même module. Où faut-il la déclarer pour qu’elle soit globale ?

Dans une macro distincte de chaque macro utilisatrice.
Au début du module.
À l’intérieur de la macro qui l’utilise en premier.
Dans un module séparé de celui des macros utilisatrices.

Au début du module.

Explication

Une variable globale déclarée au début d’un module est visible par toutes les macros de ce module. Une variable déclarée dans une macro est locale et ne peut pas être partagée ainsi avec les autres macros.

8. Dans un programme, quelle fonction distingue l’entrée standard de la sortie standard ?

L’entrée standard reçoit des valeurs d’une variable, tandis que la sortie standard les stocke en mémoire.
L’entrée standard lit au clavier, tandis que la sortie standard affiche à l’écran.
L’entrée standard lit un fichier, tandis que la sortie standard écrit dans un fichier.
L’entrée standard affiche à l’écran, tandis que la sortie standard lit au clavier.

L’entrée standard lit au clavier, tandis que la sortie standard affiche à l’écran.

Explication

L’entrée standard sert à lire les informations saisies au clavier, alors que la sortie standard affiche des informations à l’écran. L’inversion de ces deux fonctions est une confusion fréquente, mais elle ne décrit pas leur rôle.

9. Pour poursuivre une instruction VBA sur la ligne suivante, quel caractère faut-il placer à la fin de la première ligne ?

Le point-virgule « ; ».
Le deux-points « : ».
L’apostrophe « ' ».
Le caractère souligné « _ ».

Le caractère souligné « _ ».

Explication

En VBA, le caractère souligné indique que l’instruction continue sur la ligne suivante. L’apostrophe sert à commencer un commentaire, et non à prolonger une instruction.

10. Comment le motif binaire 01001101 peut-il représenter soit l’entier 77, soit le caractère M ?

Son interprétation dépend du type de données associé au motif.
Il représente l’entier en mémoire vive et le caractère sur disque.
Sa valeur change selon qu’il est stocké dans un octet ou deux.
Il est converti automatiquement en caractère dès qu’il est affiché.

Son interprétation dépend du type de données associé au motif.

Explication

Un même motif binaire peut correspondre à des données différentes selon le type qui détermine son interprétation. La taille du stockage ne suffit pas à expliquer ici le passage de l’entier au caractère.

11. Quelle plage de valeurs un type Byte peut-il représenter en VBA ?

De 0 à 255, sur 1 octet.
De −2 147 483 648 à 2 147 483 647, sur 4 octets.
De −32 768 à 32 767, sur 2 octets.
De 0 à 65 535, sur 2 octets.

De 0 à 255, sur 1 octet.

Explication

Byte occupe 1 octet et représente des valeurs de 0 à 255. La plage allant de −32 768 à 32 767 correspond à Integer, qui peut représenter des valeurs négatives.

12. Pour une valeur réelle nécessitant environ 9 chiffres significatifs, quel type convient parmi Single et Double ?

Double, qui occupe 8 octets et offre 10 chiffres significatifs.
Single, qui occupe 8 octets et offre 6 chiffres significatifs.
Double, qui occupe 4 octets et offre 6 chiffres significatifs.
Single, qui occupe 4 octets et offre 10 chiffres significatifs.

Double, qui occupe 8 octets et offre 10 chiffres significatifs.

Explication

Double occupe 8 octets et offre 10 chiffres significatifs, ce qui répond au besoin d’environ 9 chiffres. Single n’en offre que 6, malgré sa taille plus faible de 4 octets.

13. Quelle expression VBA effectue une division entière de 17 par 5 ?

17 \ 5
17 ^ 5
17 / 5
17 Mod 5

17 \ 5

Explication

L’opérateur \ effectue une division entière, ce qui en fait le choix adapté pour diviser 17 par 5 sans conserver une partie décimale. L’opérateur / réalise une division ordinaire.

14. Dans quelle situation l’opérateur Like est-il approprié plutôt que l’opérateur & ?

Assembler deux chaînes pour former un seul texte.
Comparer deux valeurs numériques pour vérifier leur égalité.
Vérifier si une chaîne respecte un modèle donné.
Calculer le reste d’une division entre deux nombres.

Vérifier si une chaîne respecte un modèle donné.

Explication

Like compare une chaîne à un modèle afin d’en vérifier la conformité. L’opérateur & sert plutôt à assembler des chaînes de caractères.

15. Dans un programme, quelle différence distingue If...Then de If...Then...Else ?

If...Then compare une expression à plusieurs cas, tandis qu'If...Then...Else évalue une condition après chaque bloc.
If...Then répète un bloc avec un compteur, tandis qu'If...Then...Else répète le bloc jusqu’à une condition de sortie.
If...Then exécute un bloc si la condition est vraie, tandis qu'If...Then...Else prévoit aussi un bloc si elle est fausse.
If...Then teste plusieurs conditions successives, tandis qu'If...Then...Else associe des blocs à des valeurs précises.

If...Then exécute un bloc si la condition est vraie, tandis qu'If...Then...Else prévoit aussi un bloc si elle est fausse.

Explication

If...Then ne prévoit une exécution que lorsque sa condition est vraie, alors qu'If...Then...Else fournit une branche pour chaque résultat de la condition. La confusion plausible consiste à attribuer à If...Then le test de plusieurs conditions, qui correspond plutôt à ElseIf.

16. Pour choisir entre plusieurs blocs selon des valeurs possibles d’une expression, quelle construction convient le mieux ?

For compare une expression à des cas et exécute le bloc correspondant.
ElseIf associe des blocs à des valeurs, des listes ou des plages de valeurs.
Do While compare une expression à des cas et exécute le bloc correspondant.
Select Case associe des blocs à des valeurs, des listes ou des plages de valeurs.

Select Case associe des blocs à des valeurs, des listes ou des plages de valeurs.

Explication

Select Case compare une expression aux cas définis, qui peuvent être des valeurs, des listes ou des plages. ElseIf enchaîne plutôt des tests conditionnels successifs, ce qui constitue une autre manière de choisir un bloc.

17. Une boucle doit vérifier sa condition de continuation avant chaque passage dans son bloc. Quelle construction répond à ce besoin ?

Do...Loop Until, qui évalue sa condition de sortie après chaque itération.
For, qui vérifie une condition de sortie après chaque itération.
If...Then...Else, qui vérifie sa condition avant chaque itération.
Do While, qui évalue la condition avant chaque itération.

Do While, qui évalue la condition avant chaque itération.

Explication

Do While évalue sa condition de continuation avant chacune des itérations, et le bloc n’est exécuté que si cette condition le permet. Do...Loop Until vérifie plutôt sa condition de sortie après l’exécution du bloc.

18. Pour répéter un bloc en faisant progresser un compteur d’une valeur de départ à une valeur finale, quelle boucle faut-il utiliser ?

For, avec un compteur et éventuellement un pas.
Select Case, avec une liste de valeurs pour le compteur.
Do While, avec une condition vérifiée avant chaque répétition.
ElseIf, avec des tests successifs sur la valeur du compteur.

For, avec un compteur et éventuellement un pas.

Explication

Une boucle For fait varier un compteur entre une valeur de départ et une valeur finale, avec la possibilité de préciser un pas. Do While repose plutôt sur une condition de continuation et ne définit pas cette progression par compteur.

19. Quelle propriété caractérise les éléments d’un tableau ?

Ils peuvent être de types différents, stockés consécutivement et repérés par un nom de champ sous un identificateur commun.
Ils sont de même type, stockés séparément et repérés par un nom de champ sous des identificateurs distincts.
Ils peuvent être de types différents, stockés séparément et repérés par un indice sous un identificateur commun.
Ils sont de même type, stockés consécutivement et repérés par un indice sous un identificateur commun.

Ils sont de même type, stockés consécutivement et repérés par un indice sous un identificateur commun.

Explication

Un tableau regroupe sous un identificateur unique des éléments de même type, stockés consécutivement et accessibles par indice. Des champs de types différents caractérisent plutôt une structure.

20. En VBA, comment accéder à l’élément situé à la ligne 2 et à la colonne 4 d’un tableau à deux dimensions nommé donnees ?

donnees(4, 2)
donnees(2, 4)
donnees(2 To 4)
donnees(2).4

donnees(2, 4)

Explication

Un élément d’un tableau à deux dimensions s’accède en indiquant d’abord l’indice de ligne, puis celui de colonne entre parenthèses. L’écriture donnees(4, 2) inverse ces deux indices et désignerait une autre position.

21. Un tableau unidimensionnel possède des indices allant de 3 à 8 inclus. Combien d’éléments contient-il ?

8 éléments
5 éléments
6 éléments
11 éléments

6 éléments

Explication

Le nombre d’éléments se calcule par ind_max+1−ind_minind\_max + 1 - ind\_min, soit 8+1−3=68 + 1 - 3 = 6. La différence simple entre les bornes donne 5, mais ne compte pas les deux bornes incluses.

22. Quel énoncé distingue correctement une structure d’un tableau ?

Une structure stocke des informations sans les réunir dans une même variable.
Une structure regroupe des informations connexes dont les champs peuvent être de types différents.
Une structure associe chaque champ à une position de ligne et de colonne.
Une structure regroupe des éléments de même type qui sont repérés par un indice.

Une structure regroupe des informations connexes dont les champs peuvent être de types différents.

Explication

Une structure rassemble des informations connexes dans une variable et ses champs peuvent avoir des types différents. L’idée d’éléments de même type repérés par indice décrit plutôt un tableau.

23. Quelle notation permet d’accéder au champ annee d’une variable structurée nommée noelAnneeDerniere ?

noelAnneeDerniere(annee)
noelAnneeDerniere.annee
noelAnneeDerniere,annee
noelAnneeDerniere[annee]

noelAnneeDerniere.annee

Explication

La notation variable.champ, ici noelAnneeDerniere.annee, sert à accéder à un champ d’une structure. Les parenthèses servent plutôt à accéder à un élément de tableau à l’aide de son indice.

24. Quelles caractéristiques définissent un sous-programme ?

Il correspond à une suite d’instructions sans nom, qui ne peut recevoir de paramètres ni communiquer avec l’appelant.
Il partage les variables du programme appelant, s’exécute sans délimitation et renvoie nécessairement une valeur.
Il constitue le programme principal, dont les variables et les limites sont définies par l’application hôte.
Il possède un nom, ses propres variables, un début et une fin, et peut échanger des informations avec le programme appelant par des paramètres.

Il possède un nom, ses propres variables, un début et une fin, et peut échanger des informations avec le programme appelant par des paramètres.

Explication

Un sous-programme possède une structure propre et peut recevoir des paramètres pour échanger des informations avec le programme appelant. Le fait de renvoyer une valeur n’est pas une caractéristique commune à tous les sous-programmes, car une procédure Sub n’en renvoie pas.

25. Dans une application VBA, comment faut-il comprendre l’exécution d’une macro ?

Une macro est une procédure autonome qui démarre indépendamment de l’application hôte et possède son propre programme principal.
Une macro est le programme principal VBA, qui lance ensuite les procédures et les fonctions de l’application hôte.
Une macro est une fonction appelée depuis un programme principal VBA, qui organise les procédures de l’application hôte.
Une macro est une procédure ou une fonction exécutée depuis l’application hôte, sans programme principal VBA.

Une macro est une procédure ou une fonction exécutée depuis l’application hôte, sans programme principal VBA.

Explication

En VBA, une macro correspond à une procédure ou à une fonction exécutée depuis l’application hôte, et le langage ne comporte pas de programme principal. L’idée d’un programme principal lançant les macros confond VBA avec un modèle où l’exécution démarre dans une routine principale.

26. Quelle différence distingue une fonction VBA d’une procédure Sub concernant la valeur de retour ?

Une fonction et une procédure Sub renvoient une valeur, mais seule la fonction déclare le type de cette valeur.
Une procédure Sub déclare un type de retour et attribue la valeur au nom de la procédure, tandis qu’une fonction ne renvoie pas de valeur.
Une fonction déclare un type de retour et attribue la valeur au nom de la fonction, tandis qu’une procédure Sub ne renvoie pas de valeur.
Une fonction déclare un type de retour, mais attribue la valeur à une variable globale, tandis qu’une procédure Sub renvoie une valeur par paramètre.

Une fonction déclare un type de retour et attribue la valeur au nom de la fonction, tandis qu’une procédure Sub ne renvoie pas de valeur.

Explication

Une fonction VBA indique le type de sa valeur de retour et fournit cette valeur en l’affectant au nom de la fonction. Une procédure Sub ne renvoie pas de valeur, contrairement à l’affirmation selon laquelle les deux constructions en renverraient une.

27. Une procédure modifie un paramètre déclaré ByVal : qu’advient-il de l’argument utilisé lors de l’appel ?

L’argument effectif reste inchangé, car la procédure modifie une copie locale du paramètre.
L’argument effectif reçoit la modification, car ByVal transmet directement sa référence à la procédure.
L’argument effectif est remplacé par une valeur par défaut, car ByVal empêche toute lecture du paramètre.
L’argument effectif reçoit la modification seulement si le paramètre est déclaré comme tableau.

L’argument effectif reste inchangé, car la procédure modifie une copie locale du paramètre.

Explication

ByVal transmet une copie locale : les changements réalisés dans la procédure ne sont donc pas répercutés sur l’argument effectif. La transmission directe des modifications correspond au comportement de ByRef, et non à celui de ByVal.

28. Une procédure modifie un paramètre déclaré ByRef : quel est l’effet sur l’argument transmis ?

Les modifications sont répercutées seulement après la fermeture du programme appelant.
Les modifications effectuées dans la procédure sont répercutées sur l’argument effectif.
Les modifications restent dans une copie locale et l’argument effectif conserve sa valeur initiale.
Les modifications sont ignorées, sauf si l’argument transmis est une constante.

Les modifications effectuées dans la procédure sont répercutées sur l’argument effectif.

Explication

ByRef transmet le paramètre par référence, de sorte que les modifications dans le sous-programme affectent l’argument effectif. Le maintien d’une copie locale non répercutée décrit plutôt le passage par valeur avec ByVal.

29. En VBA, que renvoie FreeFile pour préparer la manipulation d’un fichier ?

Le nombre d’enregistrements disponibles, à utiliser pour déterminer le mode d’ouverture du fichier.
Le premier numéro de fichier inutilisé, sous la forme d’un entier à utiliser pour manipuler le fichier ouvert.
Le nom du fichier sélectionné, sous la forme d’une chaîne affectée à la variable de fichier.
Le chemin complet du premier fichier disponible, à utiliser comme argument de lecture dans Open.

Le premier numéro de fichier inutilisé, sous la forme d’un entier à utiliser pour manipuler le fichier ouvert.

Explication

FreeFile renvoie un numéro entier correspondant au premier numéro de fichier inutilisé, utilisé pour manipuler le fichier ouvert. Le nom et le chemin du fichier sont fournis séparément à Open, ils ne sont pas renvoyés par FreeFile.

30. Un fichier texte existant doit être conservé et complété à la fin : quel mode d’ouverture convient ?

Append, qui ouvre le fichier en lecture sans permettre d’ajouter des données.
Input, qui ouvre le fichier pour lire les données déjà enregistrées.
Append, qui ouvre le fichier pour ajouter des données à la fin.
Output, qui ouvre le fichier en écriture en remplaçant son contenu existant.

Append, qui ouvre le fichier pour ajouter des données à la fin.

Explication

Le mode Append permet d’ajouter des données à la fin du fichier existant. Output ouvre aussi le fichier en écriture, mais écrase son contenu, ce qui ne convient pas si celui-ci doit être conservé.

31. Quel encadrement un programme doit-il prévoir lorsqu’il manipule un fichier ?

Ouvrir le fichier avec Open avant la manipulation, puis le fermer avec Close après celle-ci.
Manipuler le fichier, puis utiliser Open et Close ensemble pour enregistrer les changements.
Fermer le fichier avec Close avant la manipulation, puis l’ouvrir avec Open après celle-ci.
Ouvrir le fichier avec Input avant la manipulation, puis le fermer avec Output après celle-ci.

Ouvrir le fichier avec Open avant la manipulation, puis le fermer avec Close après celle-ci.

Explication

La manipulation d’un fichier doit être encadrée par son ouverture avec Open et sa fermeture avec Close. Inverser ces opérations placerait la fermeture avant l’ouverture et ne terminerait donc pas correctement la manipulation.

32. Dans une macro, quel rôle joue généralement un objet tel qu’un classeur, une feuille ou une cellule ?

Une variable permettant d’accéder à un élément d’Excel ou de Calc
Une valeur décrivant une caractéristique d’une feuille de calcul
Une instruction déclenchant automatiquement une action utilisateur
Une procédure exécutant une action sur un classeur

Une variable permettant d’accéder à un élément d’Excel ou de Calc

Explication

Un objet est généralement représenté par une variable qui permet d’accéder à des éléments d’Excel ou de Calc. Une procédure peut effectuer une action, mais elle ne désigne pas l’objet lui-même.

33. Dans la programmation des objets d’Excel ou de Calc, comment distinguer une propriété d’une méthode ?

Une propriété exécute une action sur l’objet, tandis qu’une méthode décrit une de ses caractéristiques.
Une propriété décrit une caractéristique ou un état, tandis qu’une méthode réalise une action sur l’objet.
Une propriété déclenche un événement, tandis qu’une méthode représente une variable donnant accès à l’objet.
Une propriété regroupe des objets semblables, tandis qu’une méthode décrit l’état de leur collection.

Une propriété décrit une caractéristique ou un état, tandis qu’une méthode réalise une action sur l’objet.

Explication

Une propriété renseigne sur une caractéristique ou un état de l’objet, alors qu’une méthode correspond à une action effectuée sur cet objet. La confusion la plus plausible consiste à inverser ces deux rôles.

34. Que se passe-t-il lorsqu’un événement est associé à une macro ?

La macro regroupe dans une collection les objets créés après l’opération de l’utilisateur.
La macro décrit l’état de l’objet dès qu’une propriété de celui-ci est consultée.
La macro s’exécute à la demande lorsque l’utilisateur appelle une méthode de l’objet.
La macro peut s’exécuter automatiquement lorsqu’une opération de l’utilisateur déclenche l’événement.

La macro peut s’exécuter automatiquement lorsqu’une opération de l’utilisateur déclenche l’événement.

Explication

Un événement est un signal déclenché automatiquement en réponse à une opération de l’utilisateur, et une macro qui lui est associée peut alors s’exécuter automatiquement. L’appel d’une méthode correspond à une action sur l’objet et ne définit pas ce mécanisme événementiel.

35. Une macro doit désigner le classeur actif dans Calc ou dans Excel : quels noms d’objet correspondent à ces deux environnements ?

ActiveWorkbook dans Calc et ThisComponent dans Excel
ActiveWorkbook dans Calc et ActiveWorkbook dans Excel
ThisComponent dans Calc et ThisComponent dans Excel
ThisComponent dans Calc et ActiveWorkbook dans Excel

ThisComponent dans Calc et ActiveWorkbook dans Excel

Explication

Calc utilise ThisComponent pour désigner le classeur actif, tandis qu’Excel utilise ActiveWorkbook. Inverser ces noms est une confusion plausible, mais chacun correspond à un environnement précis.

36. Lorsqu’on compte les lignes et les colonnes à partir du premier élément, quelle convention distingue Calc d’Excel ?

Calc commence à 1 pour les lignes et à 0 pour les colonnes, tandis qu’Excel fait l’inverse.
Calc commence à 1 pour les lignes et les colonnes, tandis qu’Excel commence à 0.
Calc commence à 0 pour les lignes et à 1 pour les colonnes, tandis qu’Excel fait l’inverse.
Calc commence à 0 pour les lignes et les colonnes, tandis qu’Excel commence à 1.

Calc commence à 0 pour les lignes et les colonnes, tandis qu’Excel commence à 1.

Explication

Dans Calc, les numéros de ligne et de colonne commencent à 0, alors qu’ils commencent à 1 dans Excel. Commencer à 1 dans Calc et à 0 dans Excel inverse précisément la convention.

37. Dans Calc, quelle séquence permet de créer puis d’afficher un dialogue défini dans DialogLibraries, avant de le libérer ?

Créer avec CreateUnoDialog, afficher avec dispose, puis libérer avec Execute
Créer avec CreateUnoDialog, afficher avec Show, puis libérer avec Unload
Créer avec CreateUnoDialog, afficher avec Execute, puis libérer avec dispose
Créer avec Execute, afficher avec CreateUnoDialog, puis libérer avec dispose

Créer avec CreateUnoDialog, afficher avec Execute, puis libérer avec dispose

Explication

Sous Calc, CreateUnoDialog crée le formulaire, Execute l’affiche et dispose le libère. Show est la commande d’affichage associée ici à Excel, et non à cette séquence Calc.

38. Dans Excel, quelles commandes servent à afficher un formulaire puis à le retirer de la mémoire ?

Execute pour l’afficher et dispose pour le retirer de la mémoire
Show pour l’afficher et Unload pour le retirer de la mémoire
Show pour l’afficher et dispose pour le retirer de la mémoire
Execute pour l’afficher et Unload pour le retirer de la mémoire

Show pour l’afficher et Unload pour le retirer de la mémoire

Explication

Sous Excel, Show affiche le formulaire et Unload le retire de la mémoire. Execute et dispose appartiennent à la séquence de gestion des dialogues présentée pour Calc.

39. Pour savoir si l’utilisateur a choisi OK ou Annuler, quel mécanisme distingue Calc d’Excel ?

Calc et Excel utilisent tous deux une variable booléenne OK définie par les gestionnaires des boutons.
Calc utilise une variable booléenne OK définie par les gestionnaires des boutons, tandis qu’Excel examine ExecutableDialogResults.OK après dlg.Execute().
Calc examine le résultat de dlg.Execute() avec ExecutableDialogResults.OK, tandis qu’Excel utilise une variable booléenne OK définie par les gestionnaires des boutons.
Calc et Excel examinent tous deux le résultat de dlg.Execute() avec ExecutableDialogResults.OK.

Calc examine le résultat de dlg.Execute() avec ExecutableDialogResults.OK, tandis qu’Excel utilise une variable booléenne OK définie par les gestionnaires des boutons.

Explication

Dans Calc, le résultat de dlg.Execute() permet d’identifier le choix à l’aide de ExecutableDialogResults.OK; dans Excel, les gestionnaires des boutons définissent une variable booléenne OK. Attribuer le résultat de dlg.Execute() à Excel confond les deux mécanismes.

Révisez avec les flashcards

Mémorisez les réponses avec 81 flashcards sur Programmation en VBA.

Qui a créé le VBA, et à quelle décennie remonte sa création ?

Microsoft l’a créé dans les années 90.

Comment le VBA s’intègre-t-il à une application hôte ?

Il constitue une extension de Visual Basic intégrée à cette application.

Que permet le VBA dans l’application où il est intégré ?

Il permet d’en étendre les fonctionnalités.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Programmation en VBA.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM