Detecter derniere cellule de chaque colonne

Holeshotman

XLDnaute Junior
Bonjour le forum !

Je me permets de faire appel a vous car je rencontre un probleme qui me bloque dans ce que je souhaite faire.

J'ai realise un modele simplifie que je vous joins dans le post. En fait, je souhaite remplir un tableau a l'aide d'un userform. Pas de probleme, en ce qui concerne ce dernier, je gere plus ou moins.
Mon soucis concerne le fait qu'avec le fameux "end xlup" je ne peux detecter que la derniere ligne non vide sur une colonne donnee. J'aimerais pouvoir le faire pour chaque colonne et ainsi ne pas avoir de cellules vides dans mes colonnes.

Exemple : Si je rentre dans un premier temps des donnees uniquement en A2 et que je recommence une saisie via le userform en colonne soit B, soit C, soit D, j'aimerais que le renvoi se fasse sur la ligne 2 et non la ligne 3.

J'espere que mon probleme sera compris ...

Merci a tous par avance ! ;-)
 

Pièces jointes

  • Demo.xlsm
    21.3 KB · Affichages: 30
  • Demo.xlsm
    21.3 KB · Affichages: 34
  • Demo.xlsm
    21.3 KB · Affichages: 33

vgendron

XLDnaute Barbatruc
Re : Detecter derniere cellule de chaque colonne

Bonjour,

Pas sur d'avoir tout compris mais bon..

si tu veux la dernière ligne à chaque colonne. suffit de la rechercher à chaque fois...?

Code:
Private Sub CommandButton1_Click()

Dim der_ligne As Long
der_ligne = Cells(Rows.Count, 1).End(xlUp).Row

Sheets("Sheet1").Range("A" & (der_ligne + 1)) = TextBox1.Value
der_ligne = Cells(Rows.Count, 2).End(xlUp).Row
Sheets("Sheet1").Range("B" & (der_ligne + 1)) = TextBox2.Value
der_ligne = Cells(Rows.Count, 3).End(xlUp).Row
Sheets("Sheet1").Range("C" & (der_ligne + 1)) = TextBox3.Value
der_ligne = Cells(Rows.Count, 4).End(xlUp).Row
Sheets("Sheet1").Range("D" & (der_ligne + 1)) = TextBox4.Value

End Sub
 

piga25

XLDnaute Barbatruc
Re : Detecter derniere cellule de chaque colonne

Bonjour,

Une autre solution toujours en cherchant la première cellule vide
Code=VB:
Private Sub CommandButton1_Click()
Dim x, y, z, i As Long
x = Columns(1).Find("", Cells(Rows.Count, 1), xlValues, , 1, 1, 0).Row
y = Columns(2).Find("", Cells(Rows.Count, 2), xlValues, , 1, 1, 0).Row
z = Columns(3).Find("", Cells(Rows.Count, 3), xlValues, , 1, 1, 0).Row
i = Columns(4).Find("", Cells(Rows.Count, 4), xlValues, , 1, 1, 0).Row
Sheets("Sheet1").Cells(x, 1) = TextBox1.Value
Sheets("Sheet1").Cells(y, 2) = TextBox2.Value
Sheets("Sheet1").Cells(z, 3) = TextBox3.Value
Sheets("Sheet1").Cells(i, 4) = TextBox4.Value
End Sub
 
Dernière édition:

Discussions similaires

Réponses
5
Affichages
143