CHOOSE |
Choisir |
|---|---|
| Access 2019, Access 2016, Access 2013, Access 2010, Access 2007, Access 2003, Access XP, Access 2000 | Microsoft Access |
Syntaxe
| Choose(position, value1, value2, ... value_n) |
Paramètres
| Nom | Description |
|---|---|
| position | Ce paramètre permet d'indiquer la position dans la liste des paramètres |
| value1, value2, ... value_n | Ces paramètres permettent d'indiquer la liste des paramètres |
Description
Cette fonction permet de retourner l'argument spécifié par la position.
Remarques
- Si la position est une fraction ou un nombre réel, alors la fonction Choose arrondira la position au nombre le plus proche.
- La fonction retourne une valeur selon une position numérique : La fonction Choose permet de sélectionner un élément dans une liste de valeurs en fonction d'un indice numérique. Le premier argument représente la position à utiliser, tandis que les arguments suivants correspondent aux valeurs disponibles. Cette fonction constitue une solution simple pour effectuer une sélection sans avoir recours à plusieurs instructions conditionnelles.
- La numérotation des positions commence à 1 : Contrairement à plusieurs langages de programmation où les tableaux commencent à l'indice 0, Choose utilise une numérotation débutant à 1. Ainsi, Choose(1, "Rouge", "Vert", "Bleu") retourne "Rouge". Il est donc important de ne pas confondre cette numérotation avec celle des tableaux VBA.
- Une position inférieure à 1 retourne la valeur Null : Si le premier paramètre est égal à 0 ou à une valeur négative, la fonction ne peut sélectionner aucun élément de la liste. Dans ce cas, Microsoft Access retourne automatiquement la valeur Null. Il est donc recommandé de vérifier la validité de l'indice avant d'utiliser cette fonction.
- Une position supérieure au nombre de valeurs retourne également Null : Lorsque l'indice dépasse le nombre d'arguments fournis, Choose ne trouve aucune valeur correspondante et retourne Null. Par exemple, Choose(5, "A", "B", "C") ne provoque pas d'erreur, mais renvoie simplement une valeur nulle. Ce comportement permet de détecter facilement une sélection hors limites.
- Les indices décimaux sont automatiquement arrondis : Si la position est un nombre réel, Access effectue un arrondi vers l'entier le plus proche avant de sélectionner la valeur. Par exemple, Choose(2,6, "A", "B", "C") sélectionnera le troisième élément. Il est donc préférable de fournir directement un entier afin d'éviter toute ambiguïté sur la valeur retournée.
- Les valeurs retournées peuvent être de différents types : Les arguments value1, value2, etc. peuvent être des nombres, des chaînes de caractères, des dates, des expressions ou même le résultat d'une fonction. Choose retourne simplement l'élément correspondant à la position indiquée. Cette flexibilité permet d'utiliser la fonction dans de nombreux contextes de programmation.
- La fonction est souvent utilisée comme alternative à plusieurs conditions If...Then : Lorsque le choix dépend uniquement d'un indice numérique, Choose permet d'écrire un code beaucoup plus compact qu'une succession d'instructions If...Then...Else. Cela améliore la lisibilité du programme et réduit la quantité de code à maintenir. Elle est particulièrement pratique pour associer un numéro à une description ou à un libellé.
- Elle peut être utilisée dans les requêtes, les formulaires et le code VBA : La fonction Choose est disponible dans les requêtes SQL, les contrôles calculés, les formulaires, les états ainsi que dans les modules VBA. Cette polyvalence permet de convertir rapidement un code numérique en une valeur plus explicite directement dans une expression. Elle est fréquemment utilisée pour améliorer la présentation des données.
- Elle ne remplace pas la fonction Switch pour les conditions complexes : Choose effectue une sélection basée uniquement sur une position numérique. Si le choix dépend d'expressions logiques ou de plusieurs conditions, la fonction Switch ou une structure If...Then...Else est généralement plus appropriée. Chaque fonction possède donc son domaine d'utilisation privilégié.
- La fonction est compatible avec toutes les versions modernes de Microsoft Access : Choose est présente depuis les premières versions de Microsoft Access et son comportement est demeuré identique au fil des versions. Elle est compatible avec Access 2000, Access XP, Access 2003, Access 2007, Access 2010, Access 2013, Access 2016 ainsi qu'avec Microsoft 365. Cette stabilité garantit que les applications utilisant cette fonction restent compatibles lors des migrations vers des versions plus récentes.
Exemple
Voici un exemple de comment utiliser la fonction Choisir dans Microsoft Access :
Choose(1, "www", ".", "gladir", ".com")
Résultat: "www"
Choose(2, "www", ".", "gladir", ".com")
Résultat: "."
Choose(3, "www", ".", "gladir", ".com")
Résultat: "gladir"
Choose(4, "www", ".", "gladir", ".com")
Résultat: ".com"
Choose(5, "www", ".", "gladir", ".com")
Result: NULL
Choose(3.75, "www", ".", "gladir", ".com")
Result: "gladir"
Exemple de code VBA
La fonction Choose peut être utilisée dans le code VBA de Microsoft Access.
Par exemple :
Dim LValue As String
LValue = Choose(1, "www", ".", "gladir", ".com")
Dans cet exemple, la variable appelée LValue contiendrait la valeur «www».
Dernière mise à jour : Mardi, le 28 juillet 2015