[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
A voir également:

5 réponses

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
zavenger Messages postés 817 Statut Membre 161
 
ben oui c'est

k = Range("B2").End(xlDown).Row + 1
1
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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
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