Activer la cellule correspondante à une selection dans une combobox (excel)
steve2vince
Messages postés11Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention17 février 2006
-
15 avril 2003 à 00:08
steve2vince
Messages postés11Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention17 février 2006
-
16 avril 2003 à 19:27
Salut tout le monde, je travaille actuellement sur un projet que je dois realiser pour mes études mais j'ai un peu de mal car je ne connais le vba que depuis deux semaines....alors si quelqu'un pouvait m'aider ce serait cool. Voici mon probleme (le 1er de la liste! ) J'ai un fichier excel qui contient dans la colonne a, des dates, et sur la ligne 1, des imprimantes.....J'ai commencé à faire une petite fenetre pour faire quelques calculs des données, et dans cette fentre il y a une combobox ou je selectionne la date que je désir, mon probleme est tout simple: lorsque je selectionne cette date dans ma combobox, je voudrai que la cellule qui correspond à cette date s'active, comment faire ?! j'ai essayé avec combobox1.value = activeCell ou des choses de ce genre mais ça n'a pas marché . Voila c'est tout ! merci pour vos réponses
cs_PROGRAMMIX
Messages postés1133Date d'inscriptionmercredi 2 octobre 2002StatutMembreDernière intervention24 juillet 20112 15 avril 2003 à 10:44
Première option:
-------------------
L'ordre de tes dates dans ta combobox correspond exactement à l'ordre dans lequel elles sont placées sur ta feuille.
Dim Ligne As Integer
Ligne = ComboBox.ListIndex
Ligne = Ligne + 1 (ou plus 2 si les dates démarrent à la 2ème ligne)
MaFeuille.Range("A" & Ligne).Select
ou
MaFeuille.Range("A" & Ligne).Activate
Deuxième option:
--------------------
L'ordre n'est pas le même.
Alors on réceptionne la date choisie et on passe en revue toutes les cellules de la colonne jusqu'à ce qu'on tombe sur celle qu'on recherche.
Dim DateChoisie As String
DateChoisie = ComboBox.Text
Dim Ligne As Integer
For Ligne = 1 (ou 2) To MaFeuille.Range("A1").CurrentRegion.Rows.Count
If MaFeuille.Range("A" & Ligne).Text = DateChoisie Then
MaFeuille.Range("A" & Ligne).Activate
Exit Sub
End If
'Prévoir ici le code au cas où la cellule n'aurait pas été trouvée.
Voilà...
Remarque: je ne sais plus trop la différence entre Select et Activate ; mais j'ai peur que l'utilisation de Activate n'entraîne la perte du focus de ta Combobox vers la cellule => utilise d'abord Select.
steve2vince
Messages postés11Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention17 février 2006 16 avril 2003 à 19:27
Yesss!!!!!! merci programmix! ça marche super bien, tu peux pas savoir comme ça soulage, depuis deux semaines je galère pour le moindre truc !
MERCI encore !