Comment contrôler les données saisies dans un tableau sans macro VBA sur Excel
Dans ce tutoriel, nous allons voir comment contrôler les données saisies dans un tableau sans utiliser de macro VBA. En effet, lorsque la personne qui alimente un document n’est pas la personne qui est à l’origine de son élaboration, il est souvent nécessaire de vérifier que les informations saisies soient cohérentes avec ce qui est attendu. Pour cela, nous allons voir qu’il est possible de vérifier chaque saisie, en fonction de critères à paramétrer.
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
Tutoriel Vidéo
Vous trouverez très régulièrement de nouvelles vidéos sur la chaîne, alors pensez à vous abonner pour ne manquer aucune astuce et devenir rapidement un pro d’Excel (cliquez-ici) !
1. Présentation
Pour illustrer ce tutoriel, nous allons simplement construire une base de données de suivi des facturations :
Dans ce document, nous retrouvons au-dessus de chaque en-tête le type de saisie attendu.
Pour suivre ce tutoriel, il est nécessaire de maîtriser la Validation des données de type Personnalisé, que nous avons déjà vu en détail dans un précédent tutoriel, que vous retrouverez en cliquant ici.
2. Contrôler l’année de la saisie
Le premier contrôle mettre en place est le plus simple, nous allons simplement vérifier l’année d’une date saisie.
Pour allons avoir dans le détail comment procéder, nous iront nettement plus vite pour les exemples suivants :
Pour commencer, nous sélectionnons toutes les données sur lesquelles nous souhaitons insérer le contrôle :
Puis nous nous rendons dans le menu Données du ruban afin de cliquer sur le bouton Validation des formules :
Dans la fenêtre qui s’ouvre, nous choisissons de n’autoriser que les saisies qui répondent à une formule précise, pour cela nous sélectionnons Personnalisé :
Puis nous saisissons la formule suivante :
=ANNEE(A10)=2018
Dans cette formule, la cellule A10 correspond à la cellule active, que nous retrouvons dans la zone de nom en haut à gauche :
Puis nous validons en appuyant sur le bouton [OK].
La validation des données va s’étendre automatiquement à toutes les cellules sélectionnées.
Il est maintenant possible de saisie une date de l’année 2018 :
En revanche les dates d’une tout autre année seront refusées :
Si le message par défaut n’est pas suffisamment clair, il est possible de le personnalisé depuis la fenêtre de validation des données, onglet Alerte d’erreur :
.
3. Contrôler la saisie de noms propres
À présent, nous allons contrôler que l’utilisateur saisisse correctement le nom et le prénom du client.
Pour cela, nous vérifions qu’il existe au moins un caractère d’espacement dans la saisie.
Pour réaliser cette opération, nous allons utiliser la formule TROUVE(), qui permet de récupérer la position d’un caractère au sein d’une chaîne. Lorsque le caractère n’est pas retrouvé, la formule renvoie une erreur. Il nous suffit alors de tester si le résultat de cette formule TROUVE() est supérieur à 0 :
=TROUVE(" ";B10)>0
Ensuite, nous désirons savoir s’il s’agit de noms propres, et donc si chaque mot commence par une majuscule. Pour cela nous allons utiliser la formule EXACT() que nous avons également vu au paravent dans le détail.
=EXACT(NOMPROPRE(B10);B10)
Nous regardons ici si la saisie de la cellule B10 est exactement égale au résultat retourné par la formule NOMPROPRE(), laquelle transforme une chaîne de caractères en nom propre (chaîne en minuscule, hormis pour la première lettre de chaque mot qui est en majuscule).
Pour combiner ces deux contrôles, nous les imbriquons dans une formule ET() :
=ET(TROUVE(" ";B10)>1;EXACT(NOMPROPRE(B10);B10))
Noms en minuscules, sans espace :
Noms en minuscules, avec un espace :
Et enfin, la saisie attendue :
4. Contrôler une adresse mail
Pour contrôler la saisie de l’adresse mail, nous allons à nouveau effectuer deux tests :
- La saisie contient un arobase (« @ »),
-
La saisie se termine par (« .fr »)
=ET(TROUVE("@";C10)>0;DROITE(C10;3)=".fr")
5. Contrôler un numéro de facture
Pour contrôler le numéro de facture, nous vérifions que :
- Celui-ci commence par FA,
-
Et qu’il soit composé de 8 caractères en tout
=ET(GAUCHE(D10;2)="FA";NBCAR(D10)=8)
6. Contrôler qu’une saisie est numérique
Et enfin, pour contrôler que la saisie est bien numérique, il suffit d’utiliser la formule ESTNUM() qui renvoie VRAI lorsque le paramètre est numérique, et FAUX dans le cas contraire :
=ESTNUM(E10)