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 :

definir longueur commentaire dans textbox [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut definir longueur commentaire dans textbox
    bonsoir
    dans un userform j'ai un textbox pour des commentaires.
    Que je recupere dans une cellule d'une feuille Data,
    lors de l'extraction pour envoi en pdf, je souhaiterais que ce commentaire apparaisse sur plusieurs lignes.
    est ce possible de definir une longueur de caracteres, et mettre la suite du commentaire a la ligne.
    cris

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,
    propriété multiline de textbox à treu et code du textbox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Dim lgmaxi As Integer
    lgmaxi = 10 'pour 10 caracteres maxi par ligne
     
    If Len(TextBox1) <> 0 And Len(TextBox1) Mod lgmaxi = 0 Then
       TextBox1 = TextBox1 + vbCrLf
    End If
    End Sub
    à améliorer car dans mon exemple, je mets une longueur de ligne à 10 caracteres et si tu tapes le texte ci-dessous, tu as des surprises dans les coupures de mot :
    "si je m'appelle alphonse,ce n'est pas mon vrai nom mais simplement un pseudo"

    résultat :
    si on m'ap
    pelle al
    phonse,
    ce n'est
    pas mon
    vrai no
    m, mais
    simpleme
    nt un ps
    eudo
    PS : on ne m'appelle pas alphonse
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    merci casefayere
    j'ai teste, j'obtient comme toi des mots coupes.
    je vais approfondir ton code
    merci encore
    cris

  4. #4
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut Peut-etre une reponse
    Bonjour le forum, Chris
    Testes un fichier bidon avec un USF, un textbox et un bouton de commande auquel tu appliques ce code :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Private Sub CommandButton1_Click()
    Dim es, x As Integer, ch As String, lg As Integer, y As Integer, result(), z As Integer
    Dim lgcar As Integer
    TextBox1 = "si on m'appelle alphonse, ce n'est pas mon vrai nom mais simplement un pseudo"
    lg = 15
    es = Split(UserForm1.TextBox1, " ")
    ReDim Preserve result(x)
    y = UBound(es)
    z = 1
    ch = ""
    result(x) = es(0)
    ch = es(0)
    lgcar = 0
    For x = 0 To y
       ReDim Preserve result(x)
       While Len(result(x)) < lg + 1 And z <= UBound(es)
          ch = ch & " " & es(z)
          result(x) = ch
          z = z + 1
       Wend
       ch = ""
       If z > UBound(es) Then Exit For
    Next x
    TextBox1.Text = result(0)
    For x = 1 To UBound(result)
       TextBox1 = TextBox1 & Chr(10) & result(x)
    Next x
    End Sub
    ça t'avancera peut-être, je l'espère
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    bonsoir
    le code fonctionne bien et reponds a ma demande.
    mais le texbox est deja pre rempli,
    je souhaiterais le remplir moi meme.
    comment je peux integrer ton code dans le mien ci dessous.

    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
    17
    18
    19
    20
    Private Sub CB_Valid_Click()
    Dim WsS As Worksheet
    Dim MaRech As Range, MaPlage As Range
    Dim DerLigS As Long, DerCol As Long
     
    Set WsS = Sheets("Data")
    DerLigS = WsS.Cells(Columns(1).Cells.Count, 1).End(xlUp).Row
    Set MaPlage = WsS.Range(WsS.Cells(1, 1), WsS.Cells(DerLigS, 1))
    Set MaRech = MaPlage.Find(UF_Saisie.CB_numero, LookIn:=xlValues)
    DerCol = WsS.Cells(MaRech.Row, WsS.Rows(MaRech.Row).Cells.Count).End(xlToLeft).Column
     
    WsS.Cells(MaRech.Row, DerCol + 1) = CDate(DTPicker2)  'UF_Saisie.TB_Date)
    With WsS.Cells(MaRech.Row, DerCol + 1)
        .AddComment
        .Comment.Visible = False
        .Comment.Text Text:=UF_Saisie.TB_Comment.Value
    End With
    UF_Saisie.Hide
    Unload UF_Saisie
    End Sub
    Car apres j'utilise une macro ou je recupere le commentaire et je le sauvegarde sous pdf.

  6. #6
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,
    bien su, il est pré-rempli, ce n'était qu'un exemple, enlève cette ligne de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextBox1 = "si on m'appelle alphonse, ce n'est pas mon vrai nom mais simplement un pseudo"
    et mets ton code complet dand l'évènement choisi : bouton de commande, évènement textbox...

    Qu'est-ce que c'est "CB_Valid_Click", un bouton de commande ?
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  7. #7
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    oui c'est un bouton ok
    cris

    excuse moi je n'avais pas vu que tu m'avais repondu sur l'ancienne discusion.

    il faut peut etre que je l'a supprime

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] commentaire dans textbox
    Par chris09300 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/03/2011, 23h49
  2. Definir Format de saisie dans TextBox
    Par papy75 dans le forum IHM
    Réponses: 3
    Dernier message: 10/04/2008, 08h57
  3. definir le nb de decimale à l'affichage dans textbox
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/11/2007, 16h13
  4. [VB.NET] Sauvegarde dans TextBox des logons utilisés
    Par stephane93fr dans le forum ASP.NET
    Réponses: 3
    Dernier message: 27/10/2005, 11h00
  5. [VBA-E]modifier les attributs d'un commentaire dans une cellule
    Par Olivier vb dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/03/2004, 10h26

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