Limiter nombre de caractères de zone de texte

  • Initiateur de la discussion Dany
  • Date de début
D

Dany

Guest
Bonjour,
j'aimerai savoir s'il est possible de limiter le nombre de caractères d'une zone de texte (zone de texte de l'outil dessin et nom le control zone de texte des outils formulaire)

Merci d'avance.
 
D

Dany

Guest
Et bien j'ai une zone de texte pour faire de la saisie et j'aimerai limiter le nombre de caractères sur cette zone (par exemple à 100 caractères maxi).
Et pour ce faire, ma zone de texte est celle de la barre d'outils dessin et nom le control zone de texte de la bare d'outil formulaire.
Et j'aimerai donc savoir si c possible de limiter la saisie à un nombre de caractère défini?
Est que c'est plus clair? :(

Merci
 

Blunet

XLDnaute Occasionnel
Salut Pascal, Darry
Si je t'ai bien compris Darry t'essayes de limiter le nombre de caractère d'un contrôle TextBox. Alors je te propose d'utiliser la proriété MaxLength dudit contrôle : TextBox1.MaxLength=150 par exemple pour limiter à 150 le nombre de caractère que peut prendre le Textbox
 

Jam

XLDnaute Accro
Salut Dany, jmps, Blunet,

Je crois qu'il n'y a pas de solution pour la simple et bonne raison qu'il s'agit d'un objet Shape et que ceux-ci n'ont pas d'événements associé...donc on ne peut pas y mettre un truc du genre 'quand sorti ne conserver que les 100 premiers caractères', et qu'il n'existe pas de propriété de type longueur. [si quelqu'un peut me démontrer le contraire, je suis preneur]

Je pense qu'il te faudra utiliser un autre objet (Textbox comme le suggérait jmps).

Bon courage
 

Blunet

XLDnaute Occasionnel
Salut José je crois que je me suis 1 peu melé les pédales sorry, sorry... d'autant plus que j'ai pas compris qu'on parlait de l'objet shape.
Là je rejoins jam intuitivement je ne crois pas qu'on puisse limiter le nb de caractère d'i dessin puisqu'il s'agit de ça.

Ciao
 

Bricofire

XLDnaute Impliqué
Bonsoir tout le monde, :)

Merci José pour le On Action ;)
Une petite pirouette soluce en PJ, si on click sur le Shapes 'Text Box 1', on ouvre une input box qui permet de filtrer avec un Len le nb de K, et d'affecter le résultat si Ok au Shape en question.
Si on entre une valeur nulle, on garde l'ancien texte, ce qui permet d'annuler l'action en cours ;)

Le on action dans le workbook open appelle la procédure 'JoseBrico' dans le module1.
La macro active une cellule ensuite pour éviter de rester dans le shape où on pourrait faire ce qu'on veut du coup...
L'exemple est paramétré à 10 K, il suffit de rajouter un 0 (2 fois) dans le code pour aller à 100

Bon soit finie la récré comme l'a suggéré fort opportunément @+Thierry, soit goto zop :)

Bonne soirée à tous,

Brico [file name=JB.zip size=10038]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/JB.zip[/file]
 

Pièces jointes

  • JB.zip
    9.8 KB · Affichages: 88
  • JB.zip
    9.8 KB · Affichages: 90
  • JB.zip
    9.8 KB · Affichages: 82

myDearFriend!

XLDnaute Barbatruc
Bonsoir Dany, jmps, Blunet, Jam, Bricofire,

Juste pour le fun, ci-joint une tentative barbatruquée :)
Partant du principe qu'une saisie dans la zone de texte n'est validée que lorsque le shape perd le focus...

Soit une zone de texte nommée 'Zone de texte 1' dans la feuille, le code ci-dessous dans le module de code de cette même feuille :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'myDearFriend!
Dim ZT As Characters
Static ancT As String
Const
LimitCaract As Byte = 15   'Limiter la zone de texte à 15 caractères
     
      Set ZT = Shapes('Zone de texte 1').TextFrame.Characters
      If Not ancT = ZT.Text Then
            ZT.Text = Left(ZT.Text, LimitCaract)
            ancT = ZT.Text
      End If
End Sub
Cordialement, [file name=mDF_LimiteZoneTexte.zip size=10371]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/mDF_LimiteZoneTexte.zip[/file]
 

Pièces jointes

  • mDF_LimiteZoneTexte.zip
    10.1 KB · Affichages: 87

Bricofire

XLDnaute Impliqué
Bonsoir Dany, jmps, Blunet, Jam, Didier mDF

Didier mDF, Barbatruc peut-être, mais finement ciselé, il faut vraiment être une variable pour rester statique devant la beauté du code :)

Bonne soirée,
Brico

PS: je viens de comprendre une chose qui me turlupinait, pourquoi mDF avec le DF en majuscules ? Ben c'est que si on les enlève, ça ferait Didier sans DF, alias Didier sDF :lol:
 

Discussions similaires

Statistiques des forums

Discussions
312 194
Messages
2 086 064
Membres
103 110
dernier inscrit
Privé