[excel-vba] ajouter ligne tableau excel

Résolu
anyah Messages postés 58 Statut Membre -  
zavenger Messages postés 817 Statut Membre -
Bonjour,

je voudrais ajouter une ligne à un tableau excel pour cela il faut d'abord que je trouve la premiere ccellule non vide (creation d'une variable qui nous donne le numero decette ligne) puis l'utiliser pour remplir a la suite avec de nouvelles données.

voici le code de mon module

Sub premieresVides(k As Integer)
     Range("B2").End(xlDown).Select
     k = 2
         Do
           If IsEmpty(ActiveCell) Then
            ActiveCell.Offset(1, 0).Select
            k = k + 1
           End If
         Loop Until ActiveCell = ""
         k = k + 1
         
End Sub


lorsque je lance la macro suivante :

Sub Command_ADD_Click()

Dim k As Integer
Sheets("data base").Select
premieresVides (k)


'Sheets("Data base").Range("b" & k).Value = Sheets("ADD Data").combo_program.Value

End Sub


En fait le bouton est sur une page differente de celle où se trouve le tableau("data base")
je vois que ma derniere cellule non vide est activée mais je bug tout excel ...

quelqu'un connait 'til une solution ?

merci d'avance
Configuration: Windows 2000
Internet Explorer 6.0

5 réponses

  1. anyah Messages postés 58 Statut Membre 6
     
    est-il possible de récupérer directement l'indice de la ligne ( la pemiere vide) afin de pouvoir l'utilisé pour continuer a remplir les cellules de la ligne?

    exemple :
    variable de sortie =k

    range("b"&k).value =.......
    1
  2. zavenger Messages postés 817 Statut Membre 161
     
    ben oui c'est

    k = Range("B2").End(xlDown).Row + 1
    1
  3. zavenger Messages postés 817 Statut Membre 161
     
    Bonjour,

    Premierement il faut que toutes tes lignes soient remplies (pas de trous ...)

    auquel cas tu dois :

    Range("B2").End(xlDown).Row + 1 te donne directement la valeur que tu cherches
    0
  4. anyah Messages postés 58 Statut Membre 6
     
    Non toutes les lignes ne sont pas obligatoirement remplis entierement.
    j'ai choisi la colonne B, car c'est l'un des colonnes a etre obligatoirement remplis
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. zavenger Messages postés 817 Statut Membre 161
     
    donc c'est bon

    Cells(Range("B2").End(xlDown).Row + 1,2).select

    va te positionner sur la premiere cellule libre de ta colonne B
    0