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 :

[VBA-E]rafraichissement d'une listbox


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Par défaut [VBA-E]rafraichissement d'une listbox
    g crée une liste de client et lorsque je rajoute un nouveau client, il ne se met pas dans ma liste. donc pour le faire apparaitre dans la listbox, j'arrete le programme et je le relance.
    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     
    Private Sub EffacerClient_Click() ' lorsque l'on efface
    Dim x1 As Byte
    If NumClientSel <> 0 Then
        x1 = MsgBox("etes vous sur de vouloir suppriper le client " & Sheets("clients").Cells(NumClientSel, 1) & "?", vbYesNo + vbCritical, "suppression client")
        If x1 = vbYes Then
            Sheets("clients").Cells(NumClientSel, 8) = "oui"
            UserForm_Initialize
        End If
    Else
        MsgBox "Sélectionner un client"
    End If
     
    End Sub
     
    Private Sub Enregistrer_Click()
    Application.SaveWorkspace
     
    End Sub
     
    Private Sub Label18_Click()
     
    End Sub
     
    Private Sub ListBox1_Click() 'lorsque l'on clic sur un client ds la liste
    'ListBox1.BoundColumn = 1
    clientAff (Me.ListBox1.Value)
    NumClientSel = Me.ListBox1.Value
    End Sub
     
     
    Private Sub TextBox1_Change()
     
    End Sub
     
    Private Sub Règlement_Change()
     
    End Sub
     
    Private Sub txtAdresse_Change()
     
    End Sub
     
    Private Sub txtHTE_Change()
    txtHTE = ActiveWorkbook.Sheets(Feuil1).cell("E1")
    End Sub
     
    Private Sub UserForm_Initialize()
    Dim i, j As Long
    ListBox1.Clear
    ListBox1.BoundColumn = 2 ' numero de de colonne lié (pour la valeur retournée par listbox.value)
    i = 2 ' compteur de ligne clients (numéro de client)
    j = 0 ' compteur de ligne de listbox
    ListBox1.ColumnCount = 2
    ListBox1.ColumnWidths = "3 cm;1 cm" ' largeur des colones a l'affichage
     
    Do While Sheets("clients").Cells(i, 1) <> ""
        If Sheets("clients").Cells(i, 8) <> "oui" Then
            ListBox1.AddItem Sheets("clients").Cells(i, 1)
           ListBox1.Column(1, j) = i
            j = j + 1
        Else
            'rien
        End If
        i = i + 1
     
     Loop

  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
    Où saisis-tu le nom ?

    A+

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Par défaut Réponse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Private Sub Enregistrer_Click()
    Dim ficheClient  As String
    ficheClient = "clients"
    numClient = NuméroLibre
    'MsgBox Sheets(ficheclient).Cells(numClient, 1)
    Sheets(ficheClient).Cells(numClient, 1) = Me.txtNom.Value
    Sheets(ficheClient).Cells(numClient, 2) = Me.txtAttention.Value
    Sheets(ficheClient).Cells(numClient, 3) = Me.txtAdresse.Value
    Sheets(ficheClient).Cells(numClient, 4) = Me.txtCodePostal.Value
    Sheets(ficheClient).Cells(numClient, 5) = Me.txtTéléphoneFixe.Value
    Sheets(ficheClient).Cells(numClient, 6) = Me.txtTéléphonePortable.Value
    Sheets(ficheClient).Cells(numClient, 7) = Me.txtEmail.Value

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    tu nous montre pas ton code enregistrer client en entier, il ny as d'ailleur au cune lignes qui rajoute ton client dans la liste ...

    quelque chose du genre...:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ListBox1.AddItem Sheets(ficheClient).Cells(numclient, 1)
     
     ListBox1.Column(1, j) = numclient
    à rajouter en fin de la porcédure Enregistrer_click...;

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Par défaut
    dsl je suis débutant voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Do While Sheets("clients").Cells(i, 1) <> ""
        If Sheets("clients").Cells(i, 8) <> "oui" Then
            ListBox1.AddItem Sheets("clients").Cells(i, 1)
           ListBox1.Column(1, j) = i
            j = j + 1
        Else
            'rien
        End If
        i = i + 1

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par bastien62200
    dsl je suis débutant voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Do While Sheets("clients").Cells(i, 1) <> ""
        If Sheets("clients").Cells(i, 8) <> "oui" Then
            ListBox1.AddItem Sheets("clients").Cells(i, 1)
           ListBox1.Column(1, j) = i
            j = j + 1
        Else
            'rien
        End If
        i = i + 1
    ce code , c'est bien le code exécuté à l'initialisation ( l'ouverture) de ton userform... pas celui derriére le bouton enregistrer... s'il n'y as pas de listbox1.AddiTem... dérriere le bouton enregistrer rajoute y (en fin) les 2 lignes de codes que je t'ai précédament envoyé et dis nous ce qui se passe...

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Par défaut
    ca marque erreur d'exécution 424
    objet requis

Discussions similaires

  1. Rafraichissement d'une listbox
    Par Plouf15 dans le forum Windows Presentation Foundation
    Réponses: 0
    Dernier message: 07/09/2013, 12h54
  2. [E-03]Rafraichissement d'une ListBox sur feuille
    Par crochepatte dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/03/2009, 17h40
  3. [VBA Excel] - création d'une listbox des jours ouvrés
    Par ancel17 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/04/2008, 16h42
  4. [VBA-E] Liaison entre une listbox et un userform
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 25/02/2007, 17h32
  5. [VBA-A]Verouiller une listbox
    Par cuicui08 dans le forum VBA Access
    Réponses: 4
    Dernier message: 06/03/2006, 11h59

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