fadan
Messages postés14Date d'inscriptionjeudi 30 octobre 2008StatutMembreDernière intervention22 janvier 2009
-
21 janv. 2009 à 02:03
fadan
Messages postés14Date d'inscriptionjeudi 30 octobre 2008StatutMembreDernière intervention22 janvier 2009
-
22 janv. 2009 à 13:12
VBA excel 2003
Bonjour le forum et touts mes voeux pour 2009.
Merci d'avance à celui qui m'a lu mais aussi à celui qui pourrais m'éviter de nouvelle chute de cheveux.
Etant débutant niveaux 0 , voici le probleme:
Sur une Form et à partir d'un ComboBox d'où on sélectionne une valeur pour ensuite aller recherche cette valeur dans la "BDD" colonne "A" pour ré-afficher dans une ListView les colonnes de "B" à "J" de la base "BDD".
Je ramme vraiment sur ce code que voici:
Private Sub ComboChoix_Change()
Dim i, j, x As Integer
' remplissage ListView
With ListCarburant
'Supprime les lignes
Me.ListCarburant.ListItems.Clear
On Error Resume Next
'Récupère la derniere ligne non vide dans la colonne A
i = Range("A65536").End(xlUp).Row
'boucle sur les cellules de la colonne A
For j = 2 To i
'affiche les données
If Range("A" & j) = ComboChoix.Text Then
'Ajoute une ligne
.ListItems.Add , , Range("B" & j) 'Key
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("C" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("D" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("E" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("F" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("J" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("H" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("I" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("J" & j)
x = x + 1
End If
Next j
End With
On Error GoTo 0
Merci d'avance à l'âme charitable qui peux m'aidez.
fadan.
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 21 janv. 2009 à 07:49
Bonjour,
Quelle est la question?
Quel est le problème?
Quel est le message d'erreur?
Nous n'avons pas ton projet sous les yeux mais que ce que tu nous en dis...
Merci
fadan
Messages postés14Date d'inscriptionjeudi 30 octobre 2008StatutMembreDernière intervention22 janvier 2009 21 janv. 2009 à 13:07
Bonjour lillith212 et merci de m'avoir lu.
Je vais essayer d'être plus clair car je rame vraiment sur ce probleme de boucles.
Sous excel-2003.
J'ai une feuille nommée "BDD" avec en colonne "A" les données que je récupère sans doublons dans un ComboBox nommé "ComboChoix" et des colonnes de "B" à "J" destinées à être affichée dans une ListView nommée "ListCarburant".
Dans la colonne "A" , j'ai plusieurs fois le même( mois année)
Dans la colonne "B" , j'ai aussi plusieurs fois la même date
dans les colonnes"C à J" , d'autres données
Dans un UserForm, depuis le comboChoix, d'où je sélectionne le (mois année), je voudrais ré-afficher toutes les lignes (dates de la colonne B) ainsi que toutes les lignes des (colonnes C à J ) correspondantes au (mois année de la colonne A ).
En d'autre terme, tant que tu trouves la valeur de Combobox dans la "BDD" en colonne "A" affiche dans Listview les données correspondantes des colonnes "B à J" .
Voilà et encore merci de la réponse.
fadan
fadan
Messages postés14Date d'inscriptionjeudi 30 octobre 2008StatutMembreDernière intervention22 janvier 2009 21 janv. 2009 à 02:10
Et encore merci.
Pour que se sois plus lisible, revoici le code:
Private Sub ComboChoix_Change()
Dim i, j, x As Integer
'remplissage ListView
With ListCarburant
'Supprime les lignes
Me.ListCarburant.ListItems.Clear
On Error Resume Next
'Récupère la derniere ligne non vide dans la colonne A
i = Range("A65536").End(xlUp).Row
'boucle sur les cellules de la colonne A
For j = 2 To i
'affiche les données
If Range("A" & j) = ComboChoix.Text Then
'Ajoute une ligne
.ListItems.Add , , Range("B" & j) 'Key
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("C" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("D" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("E" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("F" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("J" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("H" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("I" & j)
ListCarburant.ListItems(j - 1).ListSubItems.Add , , Range("J" & j)
x = x + 1
End If
Next j
End With
On Error GoTo 0
fadan
fadan
Messages postés14Date d'inscriptionjeudi 30 octobre 2008StatutMembreDernière intervention22 janvier 2009 22 janv. 2009 à 13:12
Bonjour lillith mais aussi à tout le forum.
Encore merci lillith d'avoir pris le temps de me lire, mais en fait j'ai trouvé la réponse à ma question concernant l'affichage des données dans la ListView.
Mais bon, je suis loin d'avoir fini mon petit programme et donc je reviendrais surement vous embêter .
Encore merci et à bientôt.
fadan