VBA Contrôler la saisie

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

sonskriverez

XLDnaute Occasionnel
Bonsoir le Forum

Encore un casse tête (pour moi en tout cas), je voudrais pouvoir contrôler avant l'enregistrement si la saisie dans les cellules est bonne.
Si oui pas de pbl, si non ce positionner dans la cellule concernée la coloriser et indiquer la règle de saisie.

Je sais pas si c'est possible ! mais je vous joint un exemple avec les règles de saisie

Merci de votre aide
 

Pièces jointes

Re : VBA Contrôler la saisie

Bonsoir, tu pourrais imposer cela lors de la saisie genre
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Target.Count = 1 And Not Intersect(Target, Range("M4:M17", "P4:P17")) Is Nothing Then
  If Target <> UCase(Target) Then Target = UCase(Target.Value)
End If
Application.ScreenUpdating = True
End Sub
 
Re : VBA Contrôler la saisie

Bonsoir sonskriverez, st007,

sonskriverez à dit:
mais ca ne teste pas si la cellule est vide
... sur 1.048.576 lignes ... il s'en trouvera bien l'une ou l'autre qui pourrait le rester, non!?
Il faudrait donc préciser quelles cellules ne pourraient pas être vides: on se limite à une plage? Une cellule doit être complétée si une autre cellule de la même ligne n'est pas vide? etc...

Avec quelques précisions supplémentaires, on verra si une "Validation de données" pourrait être utilisée ou si une solution par VBA est incontournable 😕
 
Dernière édition:
Re : VBA Contrôler la saisie

Bsr Modeste,

Dans l'exemple joint, j'ai noté ce qu'il faut respecter pour chaque colonne. En sachant que le nombre de lignes est aléatoire. il y a 3 colonnes ou la saisie est obligatoire, donc pas de cellules vides. Le truc aussi est d'indiquer à la personne qui va remplir cette feuille qu'elle c'est trompé, petit message et positionnement sur la cellule en erreur pour correction.
enfin si c'est possible
 
Re : VBA Contrôler la saisie

Re-bonsoir,

On ne s'est pas compris: j'ai vu les commentaires dans ton fichier. Ma question est: si on considère la colonne A (où tu mentionnes "pas de cellules vides"), comment sait-on à quelle ligne il faut arrêter cette vérification? On ne s'occupe que de la plage A4:A17 ou tu auras encore des données plus bas? Si la seconde hypothèse est correcte, quel sera le repère qui fera qu'on ne "scannera" pas toutes les cellules jusqu'à A1048756?
 
Re : VBA Contrôler la saisie

bjr

Non c'est pas trop tard je suis toujours dessus... j'ai testé xxx-1234567 en colonne M et j'ai une erreur de saisie, je pense que c'est la touche entrée qui active la cellule suivante qui est vide...
Je pense que le contrôle a la sortie de la cellule est compliqué, car nous sommes pas à l'abri d'un copier/coller d'une serie de code dans une colonne. par exemple 100 cellule collées d'une seul coup...
Est-ce qu'il serait possible de scanner une colonne entière quelque soit le nombre de lignes et d'editer un popup avec les erreurs ?
 
Re : VBA Contrôler la saisie

Bonsoir à tous;

Voici une autre solution.
Voir la feuille Test avec un 'E". Il suffit de se positionner sur une colonne et cliquer sur le bouton. J'ai fait cela à la rapide, et il y a plusieurs améliorations possibles. Mais, je pense que cela te mettra sur le chemin que tu voulais, j'espère.
Par contre attention aux cellules vides en fin des colonnes.
Tu peux appliquer cela à n'importe colonne.

Cordialement
 

Pièces jointes

Re : VBA Contrôler la saisie

Bonjour à tous;

Pour étendre cela au contrôle global de toutes les colonnes, le principe est le même. Il suffit d'imbriquer la boucle de contrôle des cellules d'une colonne dans une boucle sur les colonnes.
Pour d'autres conditions, il suffit également de créer la procédure de la règle de contrôle et d'appliquer le même principe.

Quelques précautions :
Le temps de réponse dependera de l'étendue des contrôles
Probablement quelques soucis sur les cellules vides (mais surmentable)
Autre solution, au lieu de saisir directement sur une feuille, utiliser une USF pour la saisie et les contrôles

Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
523
  • Question Question
Réponses
11
Affichages
428
Retour