Ecrire un mot sur 1ère cellule vide d'une colonne

Bonjour,

Pourriez vous me donner le code VBA pour écrire "Listeval21" dans la première cellule vide de la colonne FX de la feuille "Shopping Task eDat".

Merci.

CDT

MT.

Bonjour,

essai:

With Sheets("Shopping Task eDat")
   .Range("FX" & .Range("FX" & Rows.Count).End(xlUp).Row).Offset(1, 0).Value = "Listeval21"
End With

tiens moi au courant

Bonjour à tous,

@ rvtoulon : ton code ne marchera pas dans certaines circonstances : s'il y a, par exemple, alternance de cellules vides et non vides dans la colonne ou si la première cellule non vide de la colonne n'est pas sur la première ligne.

Dim c As Long
c = 1
With Sheets("Shopping Task eDat")
    Do Until IsEmpty(.Cells(c, "FX"))
        c = c + 1
    Loop
    .Cells(c, "FX") = "Listeval21"
End With

Merci à vous

Les 2 codes fonctionnent.

Bonjour à tous,

Pour le fun en tenant compte de la bonne remarque de Game Over :

Sub test()
    With Sheets("Shopping Task eDat")
       .Range("FX" & .Range("FX1").End(xlDown).Row).Offset(1, 0).Value = "Listeval21"
    End With
End Sub

Salut Raja,

ta formule ne marchera pas si la colonne FX est vide ou si seule la cellule "FX1" est non vide...

cordialement,

le chie**

Salut Game Over,

Tu as parfaitement raison.

elle ne fonctionnera que si :

la première ET une autre cellules sont non vides dans la colonne

ou

si une cellule autre que la première est non vide

bonjour,

oui je suis d'accord avec toi,Game over, lorsque tu dis que le code que j'ai mis fonctionne sous certaines conditions.

pour moi tout dépend de ce que l'on souhaite faire.

si effectivement on souhaite remplir les cellules vides d'une colonne on peut utiliser ta méthode.

Pour ce qui est du code que j'ai mis le but était de remplir la dernière cellule vide d'une colonne.

Evidemment dans un certains contexte ce code ne fonctionne pas tu as raison.

aussi en règle générale lorsque je veux remplir la dernière cellule vide d'un colonne plutôt qu'une boucle je met une condition:

je vérifie le numéro de ligne et si il est égale à 1 et que la cellule est vide alors je met ma valeur dans cette cellule sinon je vais à la cellule en dessous

Dim ligne As Integer

    With Sheets("Shopping Task eDat")

       ligne = .Range("FX" & Rows.Count).End(xlUp).Row

        If ligne = 1 And IsEmpty(.Range("FX" & ligne)) Then
            .Range("FX" & ligne).Value = "Listeval21"
        Else
            .Range("FX" & ligne).Offset(1, 0).Value = "Listeval21"
        End If

    End With

Donc en fait tout ceci est une question d'interprètation et d'utilisation. Merci pour ta remarque

Rechercher des sujets similaires à "ecrire mot 1ere vide colonne"