IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

controler les saisies dans une cellule


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 107
    Points : 54
    Points
    54
    Par défaut controler les saisies dans une cellule
    je veux grace à ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IF (keyascii < 48 or keyascii> 66) and keyascii<>8 THEN keyascii=0
    qui fonctionne sous vb dans un évènement keypress d'un textbox controler la saisie.
    mais je sais dans quelle évènement (de la cellule s'il y en a) mettre ce code afin de contrôler.
    NB:je suis aussi partant pour toute autre methode permetttant de contrôler la saisie dans une cellule.
    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Dans une feuille, il faut mettre ton code sur l'évènement Change de celle-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    End Sub
    Avec Target qui est la cellule où tu viens de faire la saisie.
    En fait, le contrôle se fera après la saisie (après validation) et non pendant.

    Il y a aussi la validation des données, mais je ne pense pas que cela fonctionnera dans ton cas, ce sera trop limité.

    Starec

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Teste ça tel quel et modifie des données dans la colonne B d'une feuille vierge.
    Tu dis si c'est l'idée, aprés on verra
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Public tag As String, ok As Boolean
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    tag = Target.Address
    ok = False
    End Sub
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If ok Then Exit Sub
        ok = True
        If Target.Column <> 2 Or tag = "" Then Exit Sub
        If Range(tag) <> "coucou" And Range(tag) <> "" Then
            Range(tag).Select
            MsgBox "Donnée erronée, remplacer " & Range(Tag) & " par ""coucou"""
        End If
    End Sub
    A+

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/04/2007, 14h27
  2. comment en VBA mettre les mots dans une cellule en oblique
    Par antoine.dandois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2007, 17h10
  3. Forcer les majuscules dans une cellule d'un Datagrid
    Par Jean_dick15 dans le forum VB.NET
    Réponses: 7
    Dernier message: 24/01/2007, 21h14
  4. ne veut pas d'espaces entre les images dans une cellule
    Par cortex024 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 07/12/2006, 15h30
  5. [VBA-E]controle de saisie dans une cellule
    Par greg778 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 03/03/2006, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo