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

Access Discussion :

Limiter la taille d'un champ memo [Débutant(e)]


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut Limiter la taille d'un champ memo
    Bonjour à tous

    Je voudrais limiter le nombre de caractères d'un champ mémo à 500. Est-ce possible ???

    Merci de votre aide.

    Chrissss

  2. #2
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    Non ce n'est pas posssible un champ mémo est limité à 255

    Dolphy

  3. #3
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Oui c'est possible

    Il faut renseigner les propriétés Valide Si et Message Erreur pour le champ concerné dans la table :

    Valide Si : Len([MonChamp])<=500
    Message Erreur : "Trop long, vous êtes limités à 500 caractères"

    Et voilà

    Dolphy, le champ mémo est limité à 65535

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Je ne voudrais pas te contrarier dolphy mais je pense que la capacité d'un champ mémo est de 65000 caractères.

    Merci à toi pour ta réponse ...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Salut

    C'est un champ text qui est limité à 255, si tu veux limiter le champ mémo il faut utiliser la fonction LEFT pour prendre les 500 premier caratère d'une chaine.

    Mais ce n'est pas possible en direct dans la propriété du champ

    starec

  6. #6
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Citation Envoyé par Starec
    Salut

    C'est un champ text qui est limité à 255, si tu veux limiter le champ mémo il faut utiliser la fonction LEFT pour prendre les 500 premier caratère d'une chaine.

    Mais ce n'est pas possible en direct dans la propriété du champ

    starec

    Et ma solution, elle ne plait à personne ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Re

    Excuse Tofalu, effectivement je n'avais pas pensé à cela, elle est encore meilleur.

    Starec

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Excusez moi de vous contrarier et merci de plancher sur mon problème mais je voudrais entrer un controle en vb sur une action de l'utilisateur.

    Vous avez la soluce ????

    merci !!!

  9. #9
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Quel rapport avec le champ mémo et sa taille ?

  10. #10
    Invité
    Invité(e)
    Par défaut
    Re

    Alors il faut prendre le left pour garder les 500 premiers caractères, ou tester après la saisie avec la fonction Len.

    Comme dit Tofalu il n'ya aucun rapport avec le champ mémo, ce que tu veux faire c'est contrôler la saisie

    Starec

  11. #11
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    1- ça n'a pas de rapport avec le premier post
    2- c'est incompréhensible pour moi

    Citation Envoyé par Chrissrare
    ../.. entrer un controle en vb sur une action de l'utilisateur. ../..

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Ben je voudrais que l'application contrôle le nombre de caractères à la fermeture d'un formulaire par exemple.

    C'est un peu ta solution tofalu mais au lieu de le faire directement dans la table, je voudrais le faire sur une action.

  13. #13
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    ok
    sur l'événement fermeture, essaie ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If len(Me.Controls("Nom du controle") > 500 Then
        msgbox "Pas bien, ya trop de lettres !"
    End if

  14. #14
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Autant le faire dans la table non ? Au moins tu es sur que la contrainte sera toujours respéctée quelque soit le mode d'accès à la base de données.

    De plus la propriété Valide Si existe aussi pour les contrôles

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Le nom de mon champ s'appelle observations

    Je met le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    If Len(Me.Controls(Observations)) > 500 Then
     
        MsgBox "trop de lettres"
     
    Else
     
        DoCmd.Close acForm, "saisieliquant"
        DoCmd.OpenForm "AccueilLitquant", , , , , acDialog
     
    End If
     
    End Sub
    Mais ca ne marche pas !!!! Doit y avoir une erreur de syntaxe !!!????

    merci

  16. #16
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    J'ai mis des double quotes (") autour du nom du contrôle ...

    Cela dit, Tofalu a raison.

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    même avec les côtes comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    If Len(Me.Controls("Observations")) > 500 Then
     
        MsgBox "trop de lettres"
     
    Else
     
        DoCmd.Close acForm, "saisieliquant"
        DoCmd.OpenForm "AccueilLitquant", , , , , acDialog
     
    End If
     
    End Sub
    Ca ne marche pas !!!!

    La méthode de tofalu marche quand je saisis directement dans la table. Par contre, quand je le fais avec le formulaire, l'enregistrement ne s'incrémente pas dans la table mais je n'ai pas le message d'erreur !!!!!!

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    J'ai aussi essayer avec les [] comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    If Len(Me.Controls([Observations])) > 500 Then
     
        MsgBox "trop de lettres"
     
    Else
     
        DoCmd.Close acForm, "saisieliquant"
        DoCmd.OpenForm "AccueilLitquant", , , , , acDialog
     
    End If
     
    End Sub
    Ca paraît mieux mais ca bloque l'appli !!!!!

  19. #19
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Citation Envoyé par Dolphy35
    Salut,

    Non ce n'est pas posssible un champ mémo est limité à 255

    Dolphy



  20. #20
    Invité
    Invité(e)
    Par défaut
    Re

    Excuse moi Dolphy, un champ texte est limité à 255, pas un champ mémo

    Starec

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Limiter la taille d'un champ texte avec VBA
    Par Lehobbit78 dans le forum VBA Access
    Réponses: 3
    Dernier message: 25/05/2018, 12h02
  2. Limite de taille d'un champ texte en javascript
    Par bysus dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 25/08/2008, 16h13
  3. [requete] : limiter la taille d'un champ renvoyé
    Par abertaud dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 16/04/2007, 15h03
  4. [etat] limite a 255 avec un champ "memo"
    Par poplite dans le forum IHM
    Réponses: 5
    Dernier message: 28/02/2007, 09h52

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