Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Rechercher les enregistrements en alphanumérique ET en minuscules (pour les lettres)

9 réponses
Avatar
Dom
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais dans
une table (Access 97), j'ai un champ qui peut prendre les valeurs suivantes
(par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je précise
que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont en
minuscules ?

Cordialement,

Dominique.

9 réponses

Avatar
Eric
Bonjour,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like "[a-z]########[a-z][a-z][a-z][a-z]"
End Function
Avatar
Eric
re,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like "[a-z]########[a-z][a-z][a-z][a-z]"
End Function

(La fonction a 4 lignes, attention à la coupure de la ligne 3)

Dans la requête , tu mets tes champs et celui-ci:
fnQueDesMinuscules([LeChampATester])
Afficher : Non
Critère : Vrai

Dom a écrit :
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais dans
une table (Access 97), j'ai un champ qui peut prendre les valeurs suivantes
(par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je précise
que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont en
minuscules ?

Cordialement,

Dominique.













--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Avatar
Dom
Merci beaucoup Eric, je teste cela ce soir.

Dominique.

"Eric" a écrit dans le message de news:

re,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like
"[a-z]########[a-z][a-z][a-z][a-z]"
End Function

(La fonction a 4 lignes, attention à la coupure de la ligne 3)

Dans la requête , tu mets tes champs et celui-ci:
fnQueDesMinuscules([LeChampATester])
Afficher : Non
Critère : Vrai

Dom a écrit :
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais
dans une table (Access 97), j'ai un champ qui peut prendre les valeurs
suivantes (par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je
précise que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont
en minuscules ?

Cordialement,

Dominique.













--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


Avatar
Dom
Bonsoir Eric,

L'opérateur like existe sous Access 97, mais la fonction que tu as écrite,
bien qu'apparaissant tout à fait correcte, ne retourne aucun enregistrement,
et je pense l'avoir bien transposée dans ma base.

Cordialement,

Dominique.


"Dom" <domlpnLPN(enleverlesLPN)@noos.fr> a écrit dans le message de news:

Merci beaucoup Eric, je teste cela ce soir.

Dominique.

"Eric" a écrit dans le message de news:

re,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like
"[a-z]########[a-z][a-z][a-z][a-z]"
End Function

(La fonction a 4 lignes, attention à la coupure de la ligne 3)

Dans la requête , tu mets tes champs et celui-ci:
fnQueDesMinuscules([LeChampATester])
Afficher : Non
Critère : Vrai

Dom a écrit :
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais
dans une table (Access 97), j'ai un champ qui peut prendre les valeurs
suivantes (par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je
précise que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont
en minuscules ?

Cordialement,

Dominique.













--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr






Avatar
Eric
Bonsoir Dom,

J'ai testé sur A2000, A2002 & A2003 et la fonction me retourne Vrai(-1)
ou Faux(0) suivant la chaine testée.
La longueur du champ à tester doit être de *13* caractères
impérativement. Dans tes exemples, le 1er avait 14 caractères.

Dom a écrit :
Bonsoir Eric,

L'opérateur like existe sous Access 97, mais la fonction que tu as écrite,
bien qu'apparaissant tout à fait correcte, ne retourne aucun enregistrement,
et je pense l'avoir bien transposée dans ma base.

Cordialement,

Dominique.


"Dom" <domlpnLPN(enleverlesLPN)@noos.fr> a écrit dans le message de news:

Merci beaucoup Eric, je teste cela ce soir.

Dominique.

"Eric" a écrit dans le message de news:

re,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like
"[a-z]########[a-z][a-z][a-z][a-z]"
End Function

(La fonction a 4 lignes, attention à la coupure de la ligne 3)

Dans la requête , tu mets tes champs et celui-ci:
fnQueDesMinuscules([LeChampATester])
Afficher : Non
Critère : Vrai

Dom a écrit :
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais
dans une table (Access 97), j'ai un champ qui peut prendre les valeurs
suivantes (par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je
précise que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont
en minuscules ?

Cordialement,

Dominique.












--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr









Avatar
Michel__D
Bonjour,

Dans la mesure ou les lettres sont soit toutes en majuscules ou soit
toutes en minuscules tu pourrais faire le test que sur la 1ère lettre.

Dom a écrit :
Bonsoir Eric,

L'opérateur like existe sous Access 97, mais la fonction que tu as écrite,
bien qu'apparaissant tout à fait correcte, ne retourne aucun enregistrement,
et je pense l'avoir bien transposée dans ma base.

Cordialement,

Dominique.


"Dom" <domlpnLPN(enleverlesLPN)@noos.fr> a écrit dans le message de news:

Merci beaucoup Eric, je teste cela ce soir.

Dominique.

"Eric" a écrit dans le message de news:

re,

Je ne sais pas si l'opérateur Like existait sous Acces97, donc à tester.

Dans un module de portée globale :

Dans la partie Déclarations tout en haut du module
Option Compare Binary

puis dessous cette fonction :

Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = Unechaine Like
"[a-z]########[a-z][a-z][a-z][a-z]"
End Function

(La fonction a 4 lignes, attention à la coupure de la ligne 3)

Dans la requête , tu mets tes champs et celui-ci:
fnQueDesMinuscules([LeChampATester])
Afficher : Non
Critère : Vrai

Dom a écrit :
Bonsoir,

Ma question est peut-être mal libellée (mille pardons par avance), mais
dans une table (Access 97), j'ai un champ qui peut prendre les valeurs
suivantes (par exemple) :

z000010001bsaa
S00010001BSAC
m00001001bsae
M00001002BSAG

Donc, les lettres peuvent être ou en Majuscules ou en minuscules. Je
précise que le premier caractère et les 4 derniers caractères de chaque
enregistrement sont toujours des lettres, et que les 8 caractères
intermédiaires sont toujours des chiffres.

Quelle est la requête qui me permettrait de lister UNIQUEMENT les
enregistrements de ce champ dont tous les caractères alphabétiques sont
en minuscules ?

Cordialement,

Dominique.












--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr









Avatar
Eric
Bonsoir Michel_D,

J'avais pensé à ce cas de figure mais j'ai imaginé que les exemples
donnés n'étaient pas très significatifs du problème.

Autre solution toujours avec Option Compare Binary:

Function fnQueDesMinuscules2(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
If LCase(Unechaine) = Unechaine Then fnQueDesMinuscules2 = True
End Function

ce qui shunt l'opérateur like de VB et qui permet de tester des codes
avec minuscules et majuscules mélangées

Michel__D a écrit :
Bonjour,

Dans la mesure ou les lettres sont soit toutes en majuscules ou soit
toutes en minuscules tu pourrais faire le test que sur la 1ère lettre.



Avatar
Eric
.../...
ou mieux :

Option Compare Binary
Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = (LCase(Unechaine) = Unechaine)
End Function


Eric a écrit :
Bonsoir Michel_D,

J'avais pensé à ce cas de figure mais j'ai imaginé que les exemples
donnés n'étaient pas très significatifs du problème.

Autre solution toujours avec Option Compare Binary:

Function fnQueDesMinuscules2(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
If LCase(Unechaine) = Unechaine Then fnQueDesMinuscules2 = True
End Function

ce qui shunt l'opérateur like de VB et qui permet de tester des codes
avec minuscules et majuscules mélangées

Michel__D a écrit :
Bonjour,

Dans la mesure ou les lettres sont soit toutes en majuscules ou soit
toutes en minuscules tu pourrais faire le test que sur la 1ère lettre.






Avatar
Dom
Merci Eric,

Ta dernière fonction est pile-poil ce que je cherchais et elle affiche
effectivement les enregistrements comportant QUE des minuscules.

C'est impeccable !

Encore merci pour l'aide fournie.

Dominique.

"Eric" a écrit dans le message de news:
eVra$1%
.../...
ou mieux :

Option Compare Binary
Function fnQueDesMinuscules(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
fnQueDesMinuscules = (LCase(Unechaine) = Unechaine)
End Function


Eric a écrit :
Bonsoir Michel_D,

J'avais pensé à ce cas de figure mais j'ai imaginé que les exemples
donnés n'étaient pas très significatifs du problème.

Autre solution toujours avec Option Compare Binary:

Function fnQueDesMinuscules2(Unechaine) As Boolean
If IsNull(Unechaine) Then Exit Function
If LCase(Unechaine) = Unechaine Then fnQueDesMinuscules2 = True
End Function

ce qui shunt l'opérateur like de VB et qui permet de tester des codes
avec minuscules et majuscules mélangées

Michel__D a écrit :
Bonjour,

Dans la mesure ou les lettres sont soit toutes en majuscules ou soit
toutes en minuscules tu pourrais faire le test que sur la 1ère lettre.