Inserer une ligne sur 3

Le
ats.ccs
Bonjour,

Sous Excel 2000,

J'aimerai insérer une ligne sur 3 sur un tableau de 850 lignes.
J'utilise (ou j'essaie) :
Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next
Pourquoi la première ligne insérée est sous la ligne 2 sachant qu'ensuite
c'est bien toutes les 3 lignes ?
Comment faire pour que la première ligne insérée soit sous la ligne 3 ?
Merci pour votre aide.
BH.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #5176261
Bonjour.
Ca dépend du nombre de lignes. Comme tu commences par le bas, tu ne sais pas
à priori ou sera insérée la première ligne.
Essaie :

Application.ScreenUpdating = False
ctr = Range("A65536").End(3).Row
i = 4
Do While i <= ctr
If Range("A" & i) <> "" Then
Rows(i).Insert
ctr = ctr + 1
i = i + 3
End If
Loop

Cordialement.
Daniel
"" dans le message de news:

Bonjour,

Sous Excel 2000,

J'aimerai insérer une ligne sur 3 sur un tableau de 850 lignes.
J'utilise (ou j'essaie) :
Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next
Pourquoi la première ligne insérée est sous la ligne 2 sachant qu'ensuite
c'est bien toutes les 3 lignes ?
Comment faire pour que la première ligne insérée soit sous la ligne 3 ?
Merci pour votre aide.
BH.


ats.ccs
Le #5176251
Merci Daniel,

Je reconnais volontiers utiliser un code que je ne comprends pas complètement.
Ce que vous m'avez indiqué ne fonctionne pas.
Au final, je voudrais insérer une ligne toute les 3 lignes à partir du bas.
Or, dans mon 1er post, j'ai mal relaté les faits.
Mon code insére une ligne au dessus de la dernière puis insére une ligne
toutes les 3 lignes.
Je voudrais insérer une ligne au dessus des 3 dernières et ainsi de suite
jusqu'en haut même si en haut je n'ai pas un multiple de 3

Merci pour votre aide.
BH.


"Daniel.C" wrote:

Bonjour.
Ca dépend du nombre de lignes. Comme tu commences par le bas, tu ne sais pas
à priori ou sera insérée la première ligne.
Essaie :

Application.ScreenUpdating = False
ctr = Range("A65536").End(3).Row
i = 4
Do While i <= ctr
If Range("A" & i) <> "" Then
Rows(i).Insert
ctr = ctr + 1
i = i + 3
End If
Loop

Cordialement.
Daniel
"" dans le message de news:

Bonjour,

Sous Excel 2000,

J'aimerai insérer une ligne sur 3 sur un tableau de 850 lignes.
J'utilise (ou j'essaie) :
Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next
Pourquoi la première ligne insérée est sous la ligne 2 sachant qu'ensuite
c'est bien toutes les 3 lignes ?
Comment faire pour que la première ligne insérée soit sous la ligne 3 ?
Merci pour votre aide.
BH.







Ellimac
Le #5176241
Bonjour,

Sub Toto()
If Int(Range("a50000").End(xlUp).Row / 3) =
Range("a50000").End(xlUp).Row / 3 Then
der = Int(Range("a50000").End(xlUp).Row / 3) - 1
Else
der = Int(Range("a50000").End(xlUp).Row / 3)
End If
Range("a50000").End(xlUp).Select
For cpt = 1 To der
ActiveCell.Offset(-2).Select
ActiveCell.EntireRow.Insert
ActiveCell.Offset(-1).Select
Next
End Sub

Camille

"" dans le message de news:

Merci Daniel,

Je reconnais volontiers utiliser un code que je ne comprends pas
complètement.
Ce que vous m'avez indiqué ne fonctionne pas.
Au final, je voudrais insérer une ligne toute les 3 lignes à partir du
bas.
Or, dans mon 1er post, j'ai mal relaté les faits.
Mon code insére une ligne au dessus de la dernière puis insére une ligne
toutes les 3 lignes.
Je voudrais insérer une ligne au dessus des 3 dernières et ainsi de suite
jusqu'en haut même si en haut je n'ai pas un multiple de 3

Merci pour votre aide.
BH.


"Daniel.C" wrote:

Bonjour.
Ca dépend du nombre de lignes. Comme tu commences par le bas, tu ne sais
pas
à priori ou sera insérée la première ligne.
Essaie :

Application.ScreenUpdating = False
ctr = Range("A65536").End(3).Row
i = 4
Do While i <= ctr
If Range("A" & i) <> "" Then
Rows(i).Insert
ctr = ctr + 1
i = i + 3
End If
Loop

Cordialement.
Daniel
"" dans le message de news:

Bonjour,

Sous Excel 2000,

J'aimerai insérer une ligne sur 3 sur un tableau de 850 lignes.
J'utilise (ou j'essaie) :
Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next
Pourquoi la première ligne insérée est sous la ligne 2 sachant
qu'ensuite
c'est bien toutes les 3 lignes ?
Comment faire pour que la première ligne insérée soit sous la ligne 3 ?
Merci pour votre aide.
BH.










Daniel.C
Le #5176231
Ton code était bon, il suffit de le modifier un peu :

Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row-2 To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next

Daniel
"" dans le message de news:

Merci Daniel,

Je reconnais volontiers utiliser un code que je ne comprends pas
complètement.
Ce que vous m'avez indiqué ne fonctionne pas.
Au final, je voudrais insérer une ligne toute les 3 lignes à partir du
bas.
Or, dans mon 1er post, j'ai mal relaté les faits.
Mon code insére une ligne au dessus de la dernière puis insére une ligne
toutes les 3 lignes.
Je voudrais insérer une ligne au dessus des 3 dernières et ainsi de suite
jusqu'en haut même si en haut je n'ai pas un multiple de 3

Merci pour votre aide.
BH.


"Daniel.C" wrote:

Bonjour.
Ca dépend du nombre de lignes. Comme tu commences par le bas, tu ne sais
pas
à priori ou sera insérée la première ligne.
Essaie :

Application.ScreenUpdating = False
ctr = Range("A65536").End(3).Row
i = 4
Do While i <= ctr
If Range("A" & i) <> "" Then
Rows(i).Insert
ctr = ctr + 1
i = i + 3
End If
Loop

Cordialement.
Daniel
"" dans le message de news:

Bonjour,

Sous Excel 2000,

J'aimerai insérer une ligne sur 3 sur un tableau de 850 lignes.
J'utilise (ou j'essaie) :
Application.ScreenUpdating = False
For i = Range("A65536").End(3).Row To 1 Step -3
If Range("A" & i) <> "" Then Rows(i).Insert
Next
Pourquoi la première ligne insérée est sous la ligne 2 sachant
qu'ensuite
c'est bien toutes les 3 lignes ?
Comment faire pour que la première ligne insérée soit sous la ligne 3 ?
Merci pour votre aide.
BH.









ats.ccs
Le #5176041
Merci Camille et Daniel.

BH.
Publicité
Poster une réponse
Anonyme