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 :

pb suppression lignes listbox [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 29
    Par défaut pb suppression lignes listbox
    Bonjour, J'ai un problème pour supprimer en même temps plusieurs éléments dans une listbox.



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub supprime_valeur_liste()
    Dim i As Integer
    Dim compteur_liste As Double
    compteur_liste = listbox.ListCount - 1
    For i = 0 To compteur_liste
    OU
    For i = compteur_liste To 0 Step -1
        If listbox.Selected(i) = True Then
        listbox.action_estim.RemoveItem (listbox.action_estim.ListIndex)
        Else
        End If
    Next
    End Sub
    Dans le sens For i = 0 To compteur_liste:
    Le pb c'est que du moment ou l'on supprime une ligne, la boucle ne peut plus aller jusqu'au bout.....
    Dans le sens For i = compteur_liste To 0 Step -1
    Le pb c'est qu'il me supprime tout ce qui est au dessus de ma sélection......
    Comment faire pour ne supprimer que ces deux lignes?

    Merci bien
    fred

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    à tout hasard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For i = compteur_liste To 0 Step -1
        If listbox.Selected(i) = True Then
        listbox.RemoveItem (listbox.ListIndex)
        listbox.Selected(i) =false
        End If
    Next

  3. #3
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Normal que For x = 0 to 5 ne fonctionne pas lorsqu'on veut supprimer des lignes entières. Supposons x = 3, on supprime la ligne 3 et ensuite x s'incrémente et passe à 4 mais...la ligne 4 est devenue la ligne 3, la ligne 5 est devenue la ligne 4. Il faut donc toujours faire la boucle de bas en haut pour supprimer les lignes et de droite à gauche pour supprimer les colonnes.

    Concernant la Listbox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    For i = listbox.ListCount - 1 To 0 Step -1
        If listbox.Selected(i) = True Then listbox.RemoveItem i
    Next
    Attention : RemoveItem ne fonctionne pas si on utilise la propriété Rowsource pour remplire la Listbox

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 29
    Par défaut
    C'est exactement ça......
    merci bien

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

Discussions similaires

  1. [BATCH] Suppression Ligne
    Par kilian dans le forum Windows
    Réponses: 2
    Dernier message: 24/05/2006, 15h02
  2. [VBA][EXCEL] pb suppression ligne
    Par megapacman dans le forum Access
    Réponses: 2
    Dernier message: 06/04/2006, 14h34
  3. comment savoir si on a selectionne plusieurs lignes? LISTBOX
    Par nath-0-0 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/03/2006, 15h23
  4. [JTable] probleme suppression ligne
    Par lilou77 dans le forum Composants
    Réponses: 1
    Dernier message: 01/11/2005, 11h34

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