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 :

comment ajouter une autre ligne dans un texbox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Assistante Développement
    Inscrit en
    Juin 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistante Développement
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2008
    Messages : 116
    Par défaut comment ajouter une autre ligne dans un texbox
    Bonjour,

    j'ai un petit souci pour ajouter une autre ligne dans un texbox.

    Je m'explique, j'ai un textbox qui s'appelle tbxspecifications !

    A l'intérieur l'utilisateur devra mettre un certain nombre de texte qui risque de dépasser le cadre. Donc je voudrais limiter mon cadre et pouvoir ajouter des lignes.

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub UserForm_Initialize()
        With tbxspecifications
            'spécifie que la touche ENTREE ajoutera une nouvelle ligne
            tbxspecifications.EnterKeyBehavior = True
            UserForm1.Print
        End With
    End Sub
    j'ai un message d'erreur qui me dit que l'objet ne peut être défini ?

    J'ai aussi un souci pour l'impression et faire que mon Userform s'affiche à l'ouverture de mon document je vous donne le code complet.
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Option Explicit
     
    Private Sub CommandButton1_Click()
        Dim i As Integer
        'deuxième bouton OK
        'feuille contenant la valeur à chercher
        With Sheets("CLIENTS")
            'de la ligne 2 à la dernière ligne utilisée de la colonne A
            For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
                'recherche de la ligne en colonne A qui correspond à la sélection du combobox1
                If .Cells(i, 1).Text = Me.ComboBox1 Then
                    'si oui ComboBox1 = colonne suivante même ligne
                    tbxAdresse1 = .Cells(i, 4).Text
                    tbxAdresse2 = .Cells(i, 5).Text
                    tbxcp = .Cells(i, 7).Text
                    tbxville = .Cells(i, 8).Text
                    tbxpays = .Cells(i, 10).Text
                    tbxmoyenpaiement = .Cells(i, 21).Text
                    tbxAdresse1Livraison = .Cells(i, 13).Text
                    tbxAdresse2Livraison = .Cells(i, 14).Text
                    tbxcpLivraison = .Cells(i, 16).Text
                    tbxvilleLivraison = .Cells(i, 17).Text
                    tbxpaysLivraison = .Cells(i, 19).Text
     
                    Exit For
                End If
            Next
        End With
    End Sub
     
    Private Sub Effacer_Click()
        End
    End Sub
     
    Private Sub OK_Click()
        Dim i As Integer
     
        'feuille contenant la valeur à chercher
        With Sheets("CONTRATS")
            'de la ligne 2 à la dernière ligne utilisée de la colonne J
            For i = 2 To .Cells(Rows.Count, 10).End(xlUp).Row
                'recherche de la ligne en colonne j qui correspond à la sélection de la Listbox
                If .Cells(i, 10).Text = Me.ListBox1 Then
                    'si oui texbox1 = colonne suivante même ligne
                    tbxproduit = .Cells(i, 6).Text
                    tbxcontrat = .Cells(i, 1).Text
                    tbxlieu = .Cells(i, 12).Text
                    tbxprix = .Cells(i, 14).Text
                    tbxdestinataire = .Cells(i, 8).Text
                    tbxClientsFact = .Cells(i, 9).Text
                    tbxClientsLivr = .Cells(i, 7).Text
     
                    Exit For
                End If
            Next
        End With
    End Sub
    Voilà, merci si quelqu'un à une idée pour m'aider. :

  2. #2
    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
    Par défaut
    Pour le textbox, ajoute la propriété Multiligne = true
    pour afficher ton userform à l'ouverture de ton classeur, place l'appel à la macro qui l'affiche dans l'événement Open de Thisworkbook
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
    Ouvrir
    End Sub
    et dans un module standard, place la macro Ouvrir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Ouvrir()
    Load Userform1
    Userform1.show
    'Tu peux ainsi traiter la fermeture et l'enregistrement de ton classeurs lors de la fermeture de l'userform
    Thisworkbook.close true 'optionnel
    End sub
    pour l'édition ? De qui de quoi ? Je ne vois pas de code qui en "parle"

  3. #3
    Membre confirmé
    Femme Profil pro
    Assistante Développement
    Inscrit en
    Juin 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistante Développement
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2008
    Messages : 116
    Par défaut
    Que veux-tu dire pour l'édition ? peux-tu m'expliquer ?

    veux-tu dire pour l'impression ?

    merci pour le code c'est sympa

    j'attends ta réponse

  4. #4
    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
    Par défaut
    Editer/Imprimer même combat !
    Quel est ton pb ? Que veux-tu imprimer ? Une feuille ? Une plage ? L'userform ?

    j'attends ta réponse

  5. #5
    Membre confirmé
    Femme Profil pro
    Assistante Développement
    Inscrit en
    Juin 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistante Développement
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2008
    Messages : 116
    Par défaut
    oui je voudrais imprimer l'Userform rempli.

    J'ai un message d'erreur concernant le code que tu viens de m'envoyer,

    erreur d'execution 438 :
    propriété ou méthode non gérée par cet objet
    il s'arrête sur la deuxième ligne Load Userform1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Ouvrir()
    Load UserForm1
    UserForm1.Show
    'Tu peux ainsi traiter la fermeture et l'enregistrement de ton classeurs lors de la fermeture de l'userform
    ThisWorkbook.Close True 'optionnel
    End Sub
    Merci d'avance.

  6. #6
    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
    Par défaut
    Ajoute un DoEvents avant la ligne et si ça ne fonctionne toujours pas, supprime-la.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub .....
    DoEvents
    Load userform1
    Je n'ai toujours pas établi le pourquoi "des fois" ça fonctionne, "des fois" ça ne fonctionne pas. Je soupçonne seulement que c'est l'ouverture du fichier qui n'est pas encore effectuée. Si quelqu'un peut m'éclairer...
    Pour imprimer l'userform, c'est

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

Discussions similaires

  1. Comment ajouter une petite image dans un Trichedit.
    Par Ardely dans le forum Delphi
    Réponses: 30
    Dernier message: 23/03/2007, 16h57
  2. Réponses: 1
    Dernier message: 11/09/2006, 10h14
  3. Réponses: 1
    Dernier message: 26/05/2006, 11h11
  4. Réponses: 2
    Dernier message: 07/12/2005, 16h26

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