Vba excel restriction de saisie

maya -  
 Maya -
Bonjour,

je voudrai savoir si par une macro je peut bloquer la saisie d'une cellule à un caractère et faire entrée après cette saisie, et déplacement vers la celulle de droite.

merci d'avance
A voir également:

4 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour

pour bloquer à 1 caractère, pas besoin de VBA !!!

utilises la validation de données
option: longueur du texte <=1
1
maya
 
bonjour et merci michel
je me suis peut être mal exprimé, je connais cette option, mais ce que je cherche, c'est qu'une fois un caractère de saisie dans la cellule celà fasse entrée et déplace le cursuer sur la cellule suivante tout seul, afin que le curseur soit sur une nouvelle cellule de saisie.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 279
 
Bonjour tout le monde,

Toujours pas besoin de macro.

menu 'outils / options...', onglet 'Modification', dans 'déplacer la sélection après validation' choisir 'droite'
(sur 2003, chercher l'équivalent sur 2007...)
Et si tu sélectionnes ta plage avant de saisir, en fin de ligne il y aura un retour à la 1ère cellule de la ligne suivante.

eric
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$2" Then Target.Offset(0, 1).Select
End Sub


à adapter (ici, cellule B2) et à icopier dans le module feuille de la cellule
ou
clic droit sur le nom d'onglet-visualiser le code

0
Maya
 
bonjour,
c'est presque çà, quand je je saisie dans la celulle B2 je dois faire entré et là le curseur de deplace bien dans la cellule de droite, est il possible que l'entée et le deplacement se fasse dès la saisie du premier caractère.
merci de vos réponses
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour,

Avec une validation de dionnées, je ne pense pas , ce qui ne veut pas dire que c'est impossible).

On peut avec un "textbox" qui va sélectionner une cellule quelque soit la position du textbox dans la feuille
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Ci joint démo
https://www.cjoint.com/?ADDjYQ8RuXu

zone de texte crée avec la boite à outils contrôle et non formulaire (XL<2007)
ou insérer-controle "activeX" avec 2007
0
Maya
 
bonjour Michel
j'ai regarder ton exemple, s"est exatement ce que je cherche à faire, mais à partir d'une cellule.
comment tu lui dit dans le code (textbox1)un monbre de caracteres de 3 ou 4 ou 5..
j'ai un peu de mal, je suis novice en vba
en tout cas merci encore
0
Utilisateur anonyme
 
Bonjour à tous,

Autre suggestion :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

    Application.EnableEvents = False

    If Not (Len(Target.Value) = 1) Then
       Target.Value = Left(Target.Value, 1)
    End If
    
    Target.Offset(0, 1).Select
           
    Application.EnableEvents = True
    
End Sub
'


Cdt

Lupin
-1