Dernière ligne non vide d'une colonne à partir d'un ligne spécifique

Bonjour,

Je début en VBA Excel,

Je souhaiterais créer une variable (Long) qui donnerais la dernière ligne non vide d'une colonne mais à partir d'une ligne choisi, ce que je n'arrive pas à faire

Voici ce que j'ai fait :

Sub Ligne_Index

Dim Index As Long

Index = Range("L").End(xlUp).Row

'Index = Range("L2" ou "L2:L5000").End(xlUp).Row, ne marche pas quand je lance la macro)

MsgBox Index

End Sub

Puis si possible affiché la variable Index au format "0000"(4 caractères) au lieu de "0"

Pouvez vous m'aider svp ?

Tayh

Bonjour,

par exemple à partir de la ligne 19

ligne = Cells(19, "A").End(xlUp).Row

Bonjour,

par exemple à partir de la ligne 19

ligne = Cells(19, "A").End(xlUp).Row

Bonjour,

Merci pour votre réponse

J'ai tester votre ligne de code mais cela ne marche pas

la valeur "Index" m'affiche 1 , peut importe le nombre de ligne rempli dans cette colonne

Voici mon programme, est ce que j'ai fait une erreur ?

Sub Ligne_Index

Dim Index_FED As Long

Index = Cells(2, "L").End(xlUp).Row

MsgBox Index

End Sub

Bonjour Tayh,

Normalement, ça ira mieux comme ça :

Sub Ligne_Index()

Dim Index_FED As Long

Index = Cells(2, 12).End(xlDown).Row

MsgBox Index

End Sub

12 correspondant au L

Cordialement,

Bonjour Tayh,

Normalement, ça ira mieux comme ça :

Sub Ligne_Index()

Dim Index_FED As Long

Index = Cells(2, 12).End(xlDown).Row

MsgBox Index

End Sub

12 correspondant au L

Cordialement,

Bonjour,

Merci pour ta réponse

J'ai tester et j'ai le même problème que pour la ligne donnée par @i20100 ...

cela m'affiche la même valeur peut importe le nombre de ligne remplie

Mais entre temps j'ai trouvée cette ligne ( peut être pas parfaite mais ça marche ah ah )

Sub Ligne_Index()

Dim Index As Long

Index = Range("L2").CurrentRegion.Rows.Count - 1

MsgBox Index

End Sub

Sauriez vous maintenant comment je peux afficher la varibale Index sous la forme d'un nombre à 4 chiffres au lieu de 1 et qui pourrais s'incrémenter ?

J'ai essayé d'utilisé ces lignes mais ça ne fonctionne pas

Sub Ligne_Index()

Dim Index As Long

Dim New_FED_Num As Long

Index = Range("L2").CurrentRegion.Rows.Count - 1

New_FED_Num = Format(Index, "0000")

MsgBox New_FED_Num

End Sub

re,

peux-tu joindre un fichier pour que l'on voit la disposition des données ?

aussi indique à partir de quel ligne la recherche doit être fait.

Bonjour

A voir

Nlig = Range("L2").End(xlDown).Row

A+

Maurice

Bonjour

Le résultat d'un format est du texte, n'avez vous pas une erreur de type ?

Résultat as string

Résultat = Format(index, "0000")

Pas essayé je suis sur téléphone...

@ bientôt

LouReeD

Bonjour,

Une petite contribution.

Cdlt.

Public Sub Ligne_index()
'Déclaration des variables
Dim lastRow As Long, rng As Range
Const lCOL As Long = 12     'Colonne L
Const lRW As Long = 2       'Ligne départ
    With ActiveSheet
        'Numéro dernière ligne non vide
        lastRow = .Cells(.Rows.Count, lCOL).End(xlUp).Row
        'Détermination plage de cellules
        Set rng = .Cells(lRW, lCOL).Resize(lastRow - lRW + 1)
    End With
    MsgBox Format(lastRow, "0000")
    MsgBox rng.Address
End Sub

Bonjour à tous et merci pour vos réponses

C'est bon j'ai la variable sur 4 chiffres

En reprenant la ligne de code de LouReeD

Effectivement le format n'était pas bon

Le résultat d'un format est du texte, n'avez vous pas une erreur de type ?

Résultat as string

Résultat = Format(index, "0000")

LouReeD

La partie concernée de mon programme donne ça

Sub Ligne_Index()

Dim Index As Long

Dim Num_ligne As String

' variable -10 car j'ai des ligne vide au dessus de la case concerne "titre de colonne" et que ça ne fonctionne pas sinon

Index = Range("K11").CurrentRegion.Rows.Count - 10

Num_ligne = Format(Index, "0000")

End Sub

Maintenant j'ai 2 autres problèmes à résoudre ah ah

Mais je vais créer d'autres discussions

Bonsoir,

merci de vos remerciements !

@ bientôt

LouReeD

Rechercher des sujets similaires à "derniere ligne vide colonne partir specifique"