Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Il faut modifier la définition de tableau en l'adaptant au nombre de lignes de ton devis avec un truc du genre :
Code:
Private Sub UserForm_Initialize()
Set tableau = Range("A1:P" & Range("A65350").End(xlUp).Row)
ListBox1.List = tableau.Value
ListBox1.ListIndex = ListBox1.ListCount - 1
End Sub
Re : Listbox dernière ligne visble a l'initialization
Re
qu'entends tu par :
quand je rentre une nouvelle ligne l'userform se réinitialize et avec votre code ca me sélectionne la ligne 359 de mon tableau et pas la dernière ligne de saisie.
comment ton USF se réinitialise t il ? tu lances un code ? tu l'affiches ? il était masqué ? a priori si les données source ont changées, il faut ré-alimenter la listbox, soir avec un "AddItem", soit après un "clear" renvoyer la nouvelle liste de valeur, enfin c'est ce que je comprends...
bonne soirée
@+
Edition : re Spitnolan, n'avais pas vu ta dernière intervention... 🙂 @+
Re : Listbox dernière ligne visble a l'initialization
Re
si tu mets cela :
Code:
Set tableau = Range("A30:P" & Range("A359").End(xlUp).Row)
et que tes cellules A30 à A359 sont renseignées, c'est normale qu'il ne te renvoie que la valeur der A30. Puisque tu lui dis de prendre à partir de A30, et de remonter sur la première cellule non vide en remontant à partir de la A359, donc il trouve à nouveau A30....
donc privilégies la ligne ci dessous :
Code:
Set tableau = Range("A30:P" & Range("A65350").End(xlUp).Row)
Re : Listbox dernière ligne visble a l'initialization
Re,
Je reprends le fil...
Si une de tes colonnes A à P ne contient pas de formule mais est systématiquement renseignée alors prend la pour définir le bas de ton tableau.
Je ne sais pas si c'est clair...? Tu nus dit.
Re : Listbox dernière ligne visble a l'initialization
Re
comprend pas trop, qu'il y ai formule ou pas dans les cellules, lors de l'initialisation c'est du pareil au même, enfin il me semble...
regarde le fichier joint :usf avec 2 listbox, une alimentée à partir de la feuille 1 sans formule, l'autre à partir de la feuille 2 avec formule (liaisons). Un bouton te permet d'ajouter une ligne de données sur la feuille 1, et celui ci réinitialise en même temps la listbox 1.
Re : Listbox dernière ligne visble a l'initialization
Bonsoir stipnolan08,
la seule colonne qui peu être vide est justement la A les autres a la suite de la ligne 359 contiennent des données de pieds de page, récapitulatif de toutes les tranches de prix "sous totaux par tranches" total HT et TCC ect....
donc faut que je trouve une astuce pour insérer la formule au même temps que l'ajout d'un ouvrage, je regarder justement comment traduire la formule en vba
=SI(C65>0;A64+0,1;"")
a chaque ajout d'ouvrage ca me numérote la ligne de la colonne A avec ce type de chiffre 5.01 5.02 et ainsi de suite
Re : Listbox dernière ligne visble a l'initialization
Bonsoir pierrot93,
une fois que j'ai supprimer les formules de la colonne A de la dernière ligne de donnée a la ligne 359 de la même colone votre code VBA a parfaitement fonctionner, c'est moi qui m'en était pas rendu compte ! les formules sont a priori considérer par vba comme une entrée dans la cellule et donc non vide !
c'est la raison pour laquelle je me retrouvé toujours en dernière ligne de ma plage a30😛359
PS: sur ton fichier tu na pas de formules !
si je met une formule en colonne A sur ton tableau et je recopie vers le bas de quelques lignes tu vera que ta listbox tiendra compte de ces formules !
=SI(A364="";"";A363+1) d'ou mon problème de cet apres midi lol
Re : Listbox dernière ligne visble a l'initialization
Re,
Si tu remplis ton devis par macro comme cela me semble il te suffit de remplacer les formules de la colonne A par une incrémentation via ton code. A chaque fois que tu rajoutes un item tu incrémentes de 1 la colonne A et tu l'inscrit en valeur. Ainsi seules les lignes de devis ayant une réalité auront un numéro.
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD