Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Inserer une ligne sur 3

5 réponses
Avatar
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.

5 réponses

Avatar
Daniel.C
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
"" a écrit
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.


Avatar
ats.ccs
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
"" a écrit
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.







Avatar
Ellimac
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

"" a écrit
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
"" a écrit
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.










Avatar
Daniel.C
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
"" a écrit
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
"" a écrit
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.









Avatar
ats.ccs
Merci Camille et Daniel.

BH.