OVH Cloud OVH Cloud

insérer ligne dans des feuilles groupées en gardant les formules

12 réponses
Avatar
J
Bonjour à tous
J'ai un code (merci à l'auteur) qui insère une ligne sous la cellule
active et y recopie les formules qu'elle contient.

SVP, comment faire pour réaliser cette action sur un groupe de feuilles
(toutes les feuilles ne contiennent pas les mêmes formules, mais je
cherche à insérer une ligne au même endroit dans tout le groupe, sans
recopier les constantes)?

Merci pour l'aide.
J@@

'****
Sub NouvelleLigneEnDessous()
' Insère une ligne sous la ligne qui contient la cellule active
' et y recopie les formules qu'elle contient
Dim ZtNumLig As Integer
Dim ZtDerCol As Integer
Dim i
ActiveCell.Range("A2").EntireRow.Insert
ZtNumLig = ActiveCell.Row
ZtDerCol = ActiveCell.SpecialCells(xlCellTypeLastCell).Column
Range(Cells(ZtNumLig, 1), Cells(ZtNumLig, ZtDerCol)).Copy _
Range(Cells(ZtNumLig + 1, 1), Cells(ZtNumLig + 1, ZtDerCol))
Application.ScreenUpdating = False
For i = 1 To ZtDerCol
If Not Cells(ZtNumLig + 1, i).HasFormula Then
Cells(ZtNumLig + 1, i).ClearContents
End If
Next i
ActiveCell.Range("A2").Select
End Sub
'****

2 réponses

1 2
Avatar
Mgr T. Banni
l'auteur en était iznogood à la demande du trublion de l'époque(j'ai nommé
JPS), mon fils
que les alizés lui rendent cet hommage!
quant aux plages qui vous entourent, elles sont vraiment ridicules à
comparer à celle de votre labeur : de 6h du matin à 10 h du soir, local time
certes, mais quand même...!
bon courage jf
Mgr T.B.

"J@@" a écrit dans le message de news:
%
Bonjour à tous
J'ai un code (merci à l'auteur) qui insère une ligne sous la cellule
active et y recopie les formules qu'elle contient.

SVP, comment faire pour réaliser cette action sur un groupe de feuilles
(toutes les feuilles ne contiennent pas les mêmes formules, mais je
cherche à insérer une ligne au même endroit dans tout le groupe, sans
recopier les constantes)?

Merci pour l'aide.
J@@

'****
Sub NouvelleLigneEnDessous()
' Insère une ligne sous la ligne qui contient la cellule active
' et y recopie les formules qu'elle contient
Dim ZtNumLig As Integer
Dim ZtDerCol As Integer
Dim i
ActiveCell.Range("A2").EntireRow.Insert
ZtNumLig = ActiveCell.Row
ZtDerCol = ActiveCell.SpecialCells(xlCellTypeLastCell).Column
Range(Cells(ZtNumLig, 1), Cells(ZtNumLig, ZtDerCol)).Copy _
Range(Cells(ZtNumLig + 1, 1), Cells(ZtNumLig + 1, ZtDerCol))
Application.ScreenUpdating = False
For i = 1 To ZtDerCol
If Not Cells(ZtNumLig + 1, i).HasFormula Then
Cells(ZtNumLig + 1, i).ClearContents
End If
Next i
ActiveCell.Range("A2").Select
End Sub
'****


Avatar
J
Bonjour Mgr
Faut bien qu'il y en ait pour faire tourner la terre quand vous dormez,
O gens du Nord.
En fait, la famille est partie à Raiatea pour 3 semaines, alors les
horaires ...

Iznogood, humm, long time no see !!
Disparu corps et bien, ou changé de pseudo?
de temps en temps on voit des revenants (je veux dire des aideurs, les
demandeurs reviennent toujours, eux ;-)

Le JPS il avait bien fait de l'inciter à pondre cette macro. Elle est
bien pratique. Même s'il me faut de trois coups de burins pour l'adapter.
Amitiés
J@@

Mgr T. Banni a écrit :
l'auteur en était iznogood à la demande du trublion de l'époque(j'ai nommé
JPS), mon fils
que les alizés lui rendent cet hommage!
quant aux plages qui vous entourent, elles sont vraiment ridicules à
comparer à celle de votre labeur : de 6h du matin à 10 h du soir, local time
certes, mais quand même...!
bon courage jf
Mgr T.B.

"J@@"
Bonjour à tous
J'ai un code (merci à l'auteur) qui insère une ligne sous la cellule
active et y recopie les formules qu'elle contient.

SVP, comment faire pour réaliser cette action sur un groupe de feuilles
(toutes les feuilles ne contiennent pas les mêmes formules, mais je
cherche à insérer une ligne au même endroit dans tout le groupe, sans
recopier les constantes)?

Merci pour l'aide.
J@@

'****
Sub NouvelleLigneEnDessous()
' Insère une ligne sous la ligne qui contient la cellule active
' et y recopie les formules qu'elle contient
Dim ZtNumLig As Integer
Dim ZtDerCol As Integer
Dim i
ActiveCell.Range("A2").EntireRow.Insert
ZtNumLig = ActiveCell.Row
ZtDerCol = ActiveCell.SpecialCells(xlCellTypeLastCell).Column
Range(Cells(ZtNumLig, 1), Cells(ZtNumLig, ZtDerCol)).Copy _
Range(Cells(ZtNumLig + 1, 1), Cells(ZtNumLig + 1, ZtDerCol))
Application.ScreenUpdating = False
For i = 1 To ZtDerCol
If Not Cells(ZtNumLig + 1, i).HasFormula Then
Cells(ZtNumLig + 1, i).ClearContents
End If
Next i
ActiveCell.Range("A2").Select
End Sub
'****






1 2