Ouvrir listbox sur dernier élément de la liste

Bonjour à toutes et à tous.

J'ai encore besoin de votre aide.

J'ai une listbox qui s'ouvre dans un userform.

Je voudrais que quand j'ouvre le userform la listebox affiche le dernier élément de la liste.

Merci d'avance de votre aide.

Bonjour toutes et tous

@tester

ListBox1.TopIndex = ListBox1.ListCount

crdlt,

André

Bonjour Andre13.

Merci de ton aide.

J'ai testé ta ligne de commande, elle fonctionne, mais je me suis mal exprimé.

La commande renvoi à la fin de la listbox, or il faudrait qu'elle renvoi à la dernière ligne complétée de la listbox.

encore merci

Re,

Merci du retour

peut-être un indice sur ce fil de discussion

https://forum.excel-pratique.com/viewtopic.php?t=117640

re : merci du retour

Malheureusement cela ne me convient pas, car cela ouvre une message box qui indique le numéro de la dernière ligne utilisée.

Mais merci quand même.

Re

J'ai trouvé le code suivant :

"Private Sub CommandButton1_Click()
Dim lastelement As Integer
lastelement = ListBox1.Items(ListBox1.Items.Count - 1).toString

End Sub"

mais quand je clic sur le bouton, cela me met l'erreur suivante:

"erreur de compilation membre de méthode ou de donnée introuvable."

Merci d'avance.

Re

là! c'est un peu à l'aveuglette, un classeur exemple anonymisé serait préférable, merci

Private Sub CommandButton1_Click()
Dim lastelement As String

lastelement = Listbox1.Items(.Items.Count - 1).ToString

End Sub

Re :

33test.zip (1.05 Mo)

Je te joins le lien pour télécharger le fichier.

C'est une usine à gaz.

Il n'y a pas de mot de passe pour ouvrir le visual basic. il suffit de cliquer sur l'icone de la petite souris dans le menu principal et puis sur entrée de la fenêtre.

La liste des courses UFOLEP et liste courses CROSS sont les pages concernées.

Merci de ton aide.

Re,

je touche un truc, après çà part en vrille

arf, je vois pas

?

bonjour

with listbox1
'si une colonne
msgbox .list(.listindex)'donne la derniere donnéee de la premiere colonne

'si multi colonne
msgbox .list(.listindex,.columncount-1)'donne la dernière colonne en bas a droite
end with 

Bonjour patricktoulon.

Merci pour ton aide, mais cela ne répond à ma demande.

Ce ;code ouvre une message box, or je voudrais atteindre directement la dernière ligne complétée de la liste box.

Encore merci pour ton aide.

re

bonsoir

le msgbox c’était pour te faire comprendre l'indexation

fait une recherche listindex et listcount

Re

Désolé, je n'avais pas compris.

Je n'arrive pas à associer listindex avec les commandes suivantes;

"Private Sub DerLigne_Click()
ListBox1.TopIndex = ListBox1.ListCount - 1


End Sub"

Cette commande fonctionne, mais me renvoi à la dernière ligne de la Listbox et non à la dernière ligne complétée.

encore merci

re

la dernière ligne complétée est toujours la dernière a moins que tu ajoute des lignes vides

au quel cas il faut revoir ta conception au remplissage de ta combo sinon tout les outis que tu a à dispo listindex , listcount, etc.. seront caduques

drole de conception ?

box s'affiche sur la ligne 1. Sachant que les lignes vont de 1 à 59 et Re

Désolé, je n'est pas du être suffisamment claire.

Lorsque une nouvelle entrée est valide, l'userform se ferme et se réouvre. Se faisant la listbox s'ouvre sur la ligne 1.

Sachant que les lignes vont de 150 pour l'instant, cela oblige à scroller pour atteindre la bonne ligne.

L'idée serait que soit la listbox s'ouvre sur la première ligne vierge, soit que le numéro de la première ligne vide s'affiche dans la combobox1.

Merci d'avance*amicalement.

Re :

J'ai trouvé une solution partielle qui fonctionne.

"Private Sub DerLigne_Click()
Dim Lig As Long
Lig = 4 'première ligne à vérifier
Do While Not IsEmpty(Range("B" & Lig))
Lig = Lig + 4
Loop
MsgBox "L'ID à complété est le n°: " & Lig - 4
End Sub"

Ce que je n'arrive pas à trouver, c'est qu'au lieu d'ouvrir une msgBox, que le numero ID s'affiche dans la combox 1.

Merci d'avance.

Re :

Encore plus simple

"Private Sub DerLigne_Click()
Dim DLig As Long
DLig = Range("C3").End(xlDown).Row - 2
MsgBox "L'ID à complété est le n°: " & DLig

End Sub"

Ce que je n'arrive pas à trouver, c'est qu'au lieu d'ouvrir une msgBox, que le numéro ID s'affiche dans la combox1.

Merci d'avance.

Trouvé.

Je ne pensais pas que c'était aussi simple.

"Dim DLig As Long 'Permet de connaitre la ligne à compléter
DLig = Range("C4").End(xlDown).Row - 2
ComboBox1.ListIndex = DLig"

Merci.

Rechercher des sujets similaires à "ouvrir listbox dernier element liste"