Insérer dans TextBox valeur dernière cellule pleine d'une ligne

  • Initiateur de la discussion Initiateur de la discussion donpopo
  • Date de début Date de début

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 !

donpopo

XLDnaute Occasionnel
Bonjour le forum,

Je cherche à remplir un textbox d'un formulaire avec la dernière cellule remplie d'une ligne précise. J'arrive à déterminer la ligne désirée, pas de problème.
Le seul problème est de déterminer la dernière cellule non vide et placer la valeur dans mon textbox

Voici la procédure concernée (les lignes en commentaires et en retrait représentent mon problème):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Alimentation du formulaire UserForm2
Dim i As Long, j As Long, xlgn As Long, xdlgn As Long, xcol As Long, xmttl As Double, DerCol As Long

xdlgn = ActiveSheet.Range("C" & Rows.Count).End(xlUp).Row
If Not Application.Intersect(Target, Range("B5:B" & xdlgn)) Is Nothing Then
xlgn = Target.Row
xcol = ActiveSheet.Cells(xlgn, Columns.Count).End(xlToLeft).Column
If ActiveSheet.Cells(xlgn, 6) < "01/01/1900" Then
MsgBox "Aucun Compte-titres ne figure sur cette ligne.", vbInformation, "COMPTES-TITRES"
Exit Sub
End If

UserForm2.TextBox1.Value = Cells(xlgn, 3).Value
UserForm2.TextBox2.Value = Cells(xlgn, 8).Value
UserForm2.TextBox3.Value = Cells(xlgn, 6).Value
UserForm2.TextBox4.Value = Cells(xlgn, 9).Value

'DerCol = .Range(xlgn,
'UserForm2.TextBox5.Value = .Range(xlgn & DerCol)


UserForm2.TextBox7.Value = Cells(xlgn, 5).Value
UserForm2.TextBox8.Value = Cells(xlgn, 4).Value
UserForm2.TextBox10.Value = Cells(2, 4).Value
Range("A4").Activate
UserForm2.Show
End If
End Sub

Si quelqu'un peut m'aider,
Merci,
Donpopo
 
Salut,

Pas évident de te dire précisément sans un fichier exemple, mais je pense que tu peux compter le nombre de cellules remplies sur ta ligne avec
VB:
application.worksheetfunction.counta(Range("A"&xlgn&":"F"&xlgn))
et en déduire la dernière cellule non vide de cette ligne.
 
Je vais joindre mon fichier; mais il est assez conséquent. C'est sur la feuille Christine que j'appelle mon userform en cliquant sur la case verte en début de ligne. Je souhaite insérer dans mon textbox5 la dernière valeur de la ligne cliquée en sachant que chaque semaine s'ajoutera une colonne supplémentaire.
Merci.
 

Pièces jointes

Bonjour bonpopo
Bonjour le ful ,le Forum
Pas tout compris mais si tu veux la derniere cellule non vide d une ligne que tu connais
Avec ton ”xcol” tu devrais trouver la cellule qui est
VB:
.Cells(xlgn,xcol)
Mais pas sur d avoir compris
Non teste pas d ordi lol
Bonne fin de journee
Jean marie
 
Re
voila ce que j'ai mis et semble répondre à la demande !
VB:
UserForm2.TextBox4.Value = Cells(xlgn, 9).Value
            UserForm2.TextBox5.Value = Cells(xlgn, xcol) ' Ici          
UserForm2.TextBox7.Value = Cells(xlgn, 5).Value
Bonne fin de Soirée
Jean marie
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
250
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
503
Réponses
2
Affichages
405
Retour