afficher numero ligne dans textebox

gerardd3617

XLDnaute Occasionnel
bonsoir à tous
comment trouver le numero ligne recherchée
ci joint fichier
merci
 

Excel-lent

XLDnaute Barbatruc
Re : afficher numero ligne dans textebox

Bonsoir Gerardd3617,

Il te suffit juste de rajouter une toute petite ligne dans ta macro "UserForm_Initialize" :


TextBox3 = ActiveCell.Row

Ce qui donnerais donc dans ton fichier :
VB:
Private Sub UserForm_Initialize()
  ComboBox1.List() = Range("A2:A6500").Value
  TextBox3 = ActiveCell.Row
End Sub

Bonne soirée

PS. : testé sur ton fichier, ça fonctionne ;)
 
Dernière édition:

Excel-lent

XLDnaute Barbatruc
Re : afficher numero ligne dans textebox

Salut Gerardd3617,

Tout d'abord, l'alimentation de ta combobox me chagrine un peu, je n'ai pu m'empêcher de l'améliorer, même si ce n'était pas la question.

Dans la liste présente dans ta combobox tu mets TOUTES les valeurs situés entre A2 et A65000!!!! Bref, dans l'exemple envoyé cela fait : 65000 - 5 noms = 64995 lignes VIDES!!!!

Autre soucis, si tu as dans ta feuilles excel des données jusqu'à la ligne 65005, les 5 dernières valeurs ne seront pas présente dans ta combobox :(

L'idéal est d'adapter la taille de ta liste en fonction du nombre réél de valeur :

VB:
Private Sub UserForm_Initialize()
   ' pour alimenter  Listbox
    ComboBox1.List() = Range("A2:A" & [A2].End(xlDown).Row).Value

End Sub

ou :
VB:
Private Sub UserForm_Initialize()
   ' pour alimenter  Listbox
    ComboBox1.List() = Range("A2:A" & [A65535].End(xlUp).Row).Value

End Sub

gerardd3617 à dit:
le code me donne la position du curceur dans la feuille

Je pensais que tu voulais cela! En faite, si je traduis mieux ta pensé, en faite tu veux la position du nom dans ta liste figurant DANS ta combobox. C'est bien ça?

Si oui, il faut placer le code ci-dessous dans ta macro Private Sub ComboBox1_Change()

VB:
'numéro ligne
TextBox3 = ComboBox1.ListIndex + 1

Le code "ListIndex + 1" permet de récupérer le numéro de la ligne sélectionner dans la ComboBox indiqué.

On met "+1" car pour Excel :
-> la première ligne de la combobox a pour numéro : 0
-> la seconde ligne de la combobox a pour numéro : 1
-> ...

Testé, tout fonctionne... à condition de supprimer ta ligne de code ci-dessous qui met la pagaille dans ma solution ;)

TextBox3 = .Range(Cells(CodeLign.Row, 7).Address).Value

Bonne fin de soirée
 

Excel-lent

XLDnaute Barbatruc
Re : afficher numero ligne dans textebox

Bonsoir Gerardd3617,

J'ai regardé en diagonal le reste de ton code, j'ai vu que tu avais créé la variable : DerLign où tu mets le numéro de la dernière ligne de ton tableau de donnée.

Dans ce cas, tu peux définir cette variable comme "Variable Public" et l'utiliser dans TOUTES tes macros ;)

Ce qui donnerais dans le code transmis tout à l'heure :
VB:
Private Sub UserForm_Initialize()
   ' pour alimenter  Listbox
   ComboBox1.List() = Range("A2:A" & DerLign).Value

End Sub

Au plaisir
 

laetitia90

XLDnaute Barbatruc
Re : afficher numero ligne dans textebox

bonjour tous :):):):):)

connaitre la ligne sert a rien dans ton cas il faut utiliser ListIndex suffisant
un exemple tres basique dans ton cas j'ai rajouter un bouton pour modifier pour voir le principe
la combo se nomme C1 si plus de 2 textboxs a remplir .. il faut faire une boucle pour remplir plus simple
 

Pièces jointes

  • combo.xls
    39 KB · Affichages: 69
  • combo.xls
    39 KB · Affichages: 64
  • combo.xls
    39 KB · Affichages: 62

Discussions similaires