VBA inserer un nombre variable de ligne vide toutes les x lignes

Bonsoir le Forum,

Je viens vous demander de l'aide dans un domaine ou je ne comprend pas grand chose... le vba.

J'aurais besoin d'insérer dans un tableau un nombre de lignes vides que j'aurai choisi et inscris dans une cellule toutes les x lignes que j'aurai également choisi et inscris dans une autre cellule.

Voici un exemple de fichier :

et merci pour votre aide

bonsoir

Sub test()
    Dim nbligne&, pas&
    nbligne = 2
    pas = 8
    With ActiveSheet.ListObjects("tableau1")
        For i = pas To .ListRows.Count Step pas
            .ListRows.Add i + 1: .ListRows.Add i + 1
            i = i + nbligne
        Next
    End With
End Sub

Bonjour paticktoulon,

Je voulais pouvoir définir le nombre de lignes vides à insérer et le nombre de lignes à sauter dans des cellules de la feuille mais ta solution fonctionne.

Au pie, j'irai modifier dans le code ces valeurs à chaque fois que ca sera nécessaire.

Merci beaucoup

Re,

Je viens de remarquer un petit souci, je pense que les insertions se font jusqu'à ce qu' on atteigne la dernière ligne du tableau avant modification.

Du coup, l'insertion ne se fait plus une sur les lignes du tableau qui dépassent la dernière du tableau initial à cause des insertions faites sur les lignes antérieures.

Sub test()
    Dim nbligne&, pas&
    nbligne = 2
    pas = 8
    With ActiveSheet.ListObjects("tableau1")
        For i = pas To .ListRows.Count Step pas
            .ListRows.Add i + 1: .ListRows.Add i + 1
            i = i + nbligne
        Next
    End With
End Sub

Bonjour paticktoulon,

Je voulais pouvoir définir le nombre de lignes vides à insérer et le nombre de lignes à sauter dans des cellules de la feuille mais ta solution fonctionne.

Au pie, j'irai modifier dans le code ces valeurs à chaque fois que ca sera nécessaire.

Merci beaucoup

c'est si difficile de faire

nbligne = range(XY)'la cellule que tuveux

pas = 8=range(XY)'la cellule que tu veux

voir de mettre ce code dans l'event change avec la condition sur ces deux cellules ?????

Bonsoir patricktoulon...

c'est si difficile de faire

nbligne = range(XY)'la cellule que tuveux

pas = 8=range(XY)'la cellule que tu veux

voir de mettre ce code dans l'event change avec la condition sur ces deux cellules ?????

"c'est si difficile de se mettre à la hauteur des demandeurs ?"
C'est le lot quotidien des demandes, il faut se rendre compte que tout le monde n'a pas VOTRE niveau, du moins sur le point VBA, car sur d'autre points...

@ bientôt

LouReeD

bonsoir LouReed

pour moi il ne s'agit là que de raisonnement pas de VBA

Raisonnement oui mais avec ceci :
" Je viens vous demander de l'aide dans un domaine ou je ne comprend pas grand chose... le vba. "

et puis ceci :
" voir de mettre ce code dans l'event change avec la condition sur ces deux cellules ????? "

Je ne crois pas qu'un simple raisonnement suffise...

@ bientôt

LouReeD

Bonjour,
Effectivement je n'aurais pas pu raisonner et trouver la solution seul ... d'autant plus que ca ne fonctionne pas en mettant range(K1) et range(L1) à la place de =2 et =8.

J'ai besoin dans un autre fichier d'insérer 3 lignes vides toutes les 7 lignes, j'ai donc remplacé le 2 par un 3 dans le code et un 7 par le 8 mais cela ne fonctionne pas.

la première insertion a bien lieu après la septième ligne mais il y a seulement 2 lignes qui s'insèrent

et le saut ce fait malgré tout toutes les 8 lignes.

Comment doit-je modifier le code donné par patricktoulon afin de réussir ?

Merci d'avance.

Bonsoir,

voici un fichier exemple, qui prend le "truc" à l'envers car avec Excel lors d'ajout ou suppression de ligne il est préférable de partir "d'en bas" :

@ bientôt

LouReeD

Bonjour LouReed,

C'est parfait !!!! Merci beaucoup.

Cdlt

Saslen208

Mince, je suis démasqué ! Vous m'avez reconnu !

Je plaisante bien évidemment ! Merci pour vos remerciements.

@ bientôt

LouReeD

Rechercher des sujets similaires à "vba inserer nombre variable ligne vide toutes lignes"