Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : Access 2013 | Access 2016
Détermine si la valeur d’une expression tombe dans une plage de valeurs spécifiée. Utilisez cet opérateur dans les instructions SQL.
Syntaxe
expr [ Not ] Betweenvalue1Andvalue2
La syntaxe de l'opérateur Between…And est composée des arguments suivants :
Élément | Description |
---|---|
expr | Expression identifiant le champ qui contient les données que vous souhaitez évaluer. |
valeur1, valeur2 | Expressions à partir desquelles vous voulez évaluer expr. |
Remarques
Si la valeur d'expr est comprise entre la valeur1 et la valeur2, l'opérateur Between…And renvoie True ; dans le cas contraire, il renvoie False. Vous pouvez inclure le pas opérateur logique pour évaluer la condition opposée (autrement dit, si expr réside en dehors de la plage définie par valeur1 et valeur2 ).
Vous pouvez utiliser Entre... Et pour déterminer si la valeur d’un champ tombe dans une plage numérique spécifiée. L’exemple suivant détermine si une commande a été expédiée à un emplacement au sein d’une plage de codes postaux. Si le code postal est entre 98101 et 98199, la fonctionIIf renvoie "Local"
. Dans le cas contraire, elle retourne "Nonlocal"
.
SELECT IIf(PostalCode Between 98101 And 98199, "Local", "Nonlocal")
FROM Publishers;
Si expr, valeur1 ou valeur2 est Null, Between…And renvoie une valeur Null.
Étant donné que les caractères génériques, tels que *
, sont traités comme des littéraux, vous ne pouvez pas les utiliser avec l’opérateur Entre... Et. Par exemple, vous ne pouvez pas utiliser 980*
et 989*
pour trouver tous les codes postaux qui commencent par 980 à 989.
Au lieu de cela, vous disposez de deux alternatives permettant d’accomplir cela. Vous pouvez ajouter une expression à la requête qui prend les trois caractères de gauche du champ texte et utilise Between…And sur ces caractères. Ou vous pouvez paver les valeurs hautes et basses avec des caractères supplémentaires — dans ce cas, 98000 à 98999 ou 98000 à 98999 - 9999 si vous utilisez des codes postaux étendus. (Vous devez omettre le - 0000 des valeurs basses, car sinon, 98 000 est supprimé si certains codes postaux ont des sections étendues et d’autres non.)
Exemple
Dans cet exemple, le nom et le contact de chaque client, qui a passé une commande dans le second trimestre de 1995, sont fournis.
Cet exemple appelle la procédure EnumFields, que vous trouverez dans l’exemple d’instruction SELECT.
Sub SubQueryX()
Dim dbs As Database, rst As Recordset
' Modify this line to include the path to Northwind
' on your computer.
Set dbs = OpenDatabase("Northwind.mdb")
' List the name and contact of every customer
' who placed an order in the second quarter of
' 1995.
Set rst = dbs.OpenRecordset("SELECT ContactName," _
& " CompanyName, ContactTitle, Phone" _
& " FROM Customers" _
& " WHERE CustomerID" _
& " IN (SELECT CustomerID FROM Orders" _
& " WHERE OrderDate Between #04/1/95#" _
& " And #07/1/95#);")
' Populate the Recordset.
rst.MoveLast
' Call EnumFields to print the contents of the
' Recordset. Pass the Recordset object and desired
' field width.
EnumFields rst, 25
dbs.Close
End Sub
Voir aussi
- Forum Access pour les développeurs
- Aide Access sur support.office.com
- Aide Access sur answers.microsoft.com
- Forums Access sur UtterAccess
- Centre d'aide pour les développeurs Access et la programmation VBA (FMS)
- Billets sur Access sur StackOverflow
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.