2017-03-23 2 views

Répondre

1

Que signifie "ne fonctionne pas" signifie - message d'erreur, mauvais résultat, rien ne se passe?

Si vous voulez tester la lettre de départ, utilisez Left(), pas Right(). L'expression manque paren de fermeture et aussi besoin de comparer le paramètre de la méthode:

StrComp(UCase(Left([Nume],1)), Left([Nume],1), 0) = 0

Il fonctionne dans la propriété ValidationRule sur le terrain dans le tableau.

N'empêche pas les lettres majuscules dans d'autres positions. Il n'y a pas de fonction intrinsèque dans Access pour le cas de phrase. Considérez:
Ucase(Left(mystring,1)) & LCase(Mid(mystring, 2))

Il existe une fonction StrConv(). Cela convertira la première lettre de chaque mot en majuscule.

Ma préférence serait la procédure VBA pour assurer la saisie de l'utilisateur sous une forme correcte au lieu d'un utilisateur agaçant avec un claquement de main, ce qui les oblige à entrer à nouveau les entrées et à ralentir la productivité. L'expression ci-dessus pourrait servir à cette fin.

+0

Il a montré un message d'erreur, mais maintenant il fonctionne correctement. Merci! –

+0

L'expression plus simple de Gustav donnera le même résultat (n'a pas vu avant de poster). Voir la réponse révisée. – June7

0

Je ne pense pas que vous puissiez le faire sur le terrain, mais vous pouvez au tableau règle de validation de niveau:

Asc([Nume])=Asc(UCase([Nume]))