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] Remise a zero d'une plage de cellule


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 6
    Points
    6
    Par défaut [VBA-E] Remise a zero d'une plage de cellule
    Bonjour,

    Les utilisateurs m'ont permis d'ecrire un code qui renvoi la selection d'une listbox vers un tableau Excel. Cependant il faudrait que j'initialise ma colonne de destination j'ai tenter quelquechose (vous allez rire... on voit le niveau du programmeur que je suis...)

    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 CommandButton1_Click()
     
    Worksheets("Inlet").Cells(u, 1).Select
    Selection.ClearContents
     
    For i = 1 To ListBox1.ListCount
        If ListBox1.Selected(i) = True Then
        u = u + 1
        Worksheets("Inlet").Cells(u, 1) = ListBox1.List(i)
        End If
    Next
     
    End Sub
    Donc (evidemment) les deux premiere lignes du code ne repondent pas mon attente sinon la suite du code fait ce qu on lui demande hormis un petit bug sur la ligne : Listbox1.Selected(i)=True Then

    Voici le message :
    "Listbox1.Selected(i)= <Could not get the Selected property. Invalid argument"

  2. #2
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    En fin de compte j ai modifier mes deux premieres lignes de la maniere suivante et c ok :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets("Inlet").Range("A1:A468").Select
    Selection.ClearContents
    Par contre j'ai toujours un bug sur la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Inlet").Cells(u, 1) = ListBox1.List(i)
    Je sais qu on est dimanche matin... mais si quelqun passe ne pas hesiter a proposer une solution

    Merci

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 563
    Points : 1 691
    Points
    1 691
    Par défaut
    compte tenu qu'au moment ou tu fais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets("Inlet").Cells(u, 1).Select
    Selection.ClearContents
    ton u n'est poas encore incrementé, il est donc = a 0 donc il n'efface rien, voire il se met en erreur
    d'une part tu peux simplifier cette ligne en supprimant le select
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Inlet").Cells(u, 1).ClearContents
    d'autre part tu peux la mettre dans ta boucle pour que le u s'incremente
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    For i = 1 To ListBox1.ListCount
    Worksheets("Inlet").Cells(u, 1).ClearContents
    mais comme tu réécris sur la meme cellule la valeur du listbox, cela n'a pas beaucoup d'interet, tu peux donc enlever cette ligne, et ta macro marchera pareil.
    en fait il faut que tu determine et que tu efface la zone entiere avant de faire ta boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Inlet").range ("a1:a" & listbox.countClearContents)
    .

  4. #4
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Par chance je n'ai pas d'erreur malgre que mon u ne soit pas incrementer, mais je vais penser a le modifer avant d'avoir un bug plus tard...

    Merci et t'aurais pas une petite idee meme si sa resoud pas tt mon probleme pr le deuxieme bug ?

    @pluch'

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

Discussions similaires

  1. [VBA-E] Effacer les valeurs d'une plage de cellules
    Par jfamiens dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 10/06/2006, 11h07
  2. [VBA-E] Effacer le contenu d'une plage de cellules
    Par nicobox dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/06/2006, 12h20
  3. [VBA] Parcourir une plage de cellule
    Par Dinytro dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/09/2005, 08h18
  4. [VBA-E] Image d'une plage de cellule
    Par flogreg dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/07/2004, 12h30
  5. [VBA-E] [Excel] Protection d'une plage de cellules
    Par fikou dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/11/2002, 11h28

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