adaptation macro trouvée sur excelabo

Le
Patcas
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi..

Merci à tous

Patrice C.
Questions / Réponses high-tech
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
JB
Le #4231541
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.


Jacquouille
Le #4231531
Bonjour
Si les deux tableaux sont placés côte à côte, je ne pense pas que Excel
puisse insérer une ligne sous UN seul tableau. Tout au plus peut-on insérer
une ligne sous les deux, puis remonter la fin de l'autre tableau vers le
haut.
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Patcas" news: fCAGh.58$
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.



Patcas
Le #4231501
Merci mais je n'y arrive pas
je souhaite qu'une ligne entre les colonnes A et L
s'inserre avant la derniere ligne de mon tableau
avec les formules et de telle maniere que les plages qui se trouvent
à l'interieur de formules dans d'autres tableaux
dans d'autres onglets soient modifiées automatiquement
Si on rajoute une ligne a la fin les plages ne sont pas modifiées
Je ne sais si je suis clair.....
la formule d'excelabo fonctionne pour la ligne entiere
je souhaiterais que cela ne concerne que la ligne entre A et L

Merci encore

PAtrice





"JB"
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.


JB
Le #4231441
Post ton tableau sur http://www.cjoint.com

On 4 mar, 16:38, "Patcas"
Merci mais je n'y arrive pas
je souhaite qu'une ligne entre les colonnes A et L
s'inserre avant la derniere ligne de mon tableau
avec les formules et de telle maniere que les plages qui se trouvent
à l'interieur de formules dans d'autres tableaux
dans d'autres onglets soient modifiées automatiquement
Si on rajoute une ligne a la fin les plages ne sont pas modifiées
Je ne sais si je suis clair.....
la formule d'excelabo fonctionne pour la ligne entiere
je souhaiterais que cela ne concerne que la ligne entre A et L

Merci encore

PAtrice

"JB"
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"


Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Patcas
Le #4231411
Voilà mon travail
http://cjoint.com/?derh3Ug1MH
le probleme est dans l'onglet LYON
je voudrais inserrer une ligne dans le tableau col A a col L
sans modifier les tableaux qui sont à droite
Merci de votre aide

Patrice


"JB"
Post ton tableau sur http://www.cjoint.com

On 4 mar, 16:38, "Patcas"
Merci mais je n'y arrive pas
je souhaite qu'une ligne entre les colonnes A et L
s'inserre avant la derniere ligne de mon tableau
avec les formules et de telle maniere que les plages qui se trouvent
à l'interieur de formules dans d'autres tableaux
dans d'autres onglets soient modifiées automatiquement
Si on rajoute une ligne a la fin les plages ne sont pas modifiées
Je ne sais si je suis clair.....
la formule d'excelabo fonctionne pour la ligne entiere
je souhaiterais que cela ne concerne que la ligne entre A et L

Merci encore

PAtrice

"JB"
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"


Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



JB
Le #4231381
http://cjoint.com/?derSTxEzvA

JB

On 4 mar, 17:10, "Patcas"
Voilà mon travailhttp://cjoint.com/?derh3Ug1MH
le probleme est dans l'onglet LYON
je voudrais inserrer une ligne dans le tableau col A a col L
sans modifier les tableaux qui sont à droite
Merci de votre aide

Patrice

"JB"
Post ton tableau surhttp://www.cjoint.com

On 4 mar, 16:38, "Patcas"


Merci mais je n'y arrive pas
je souhaite qu'une ligne entre les colonnes A et L
s'inserre avant la derniere ligne de mon tableau
avec les formules et de telle maniere que les plages qui se trouvent
à l'interieur de formules dans d'autres tableaux
dans d'autres onglets soient modifiées automatiquement
Si on rajoute une ligne a la fin les plages ne sont pas modifiées
Je ne sais si je suis clair.....
la formule d'excelabo fonctionne pour la ligne entiere
je souhaiterais que cela ne concerne que la ligne entre A et L

Merci encore

PAtrice

"JB"
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -




Patcas
Le #4231321
Merci beaucoup
C'est génial
bonne soirée
Patrice

"JB"

http://cjoint.com/?derSTxEzvA

JB

On 4 mar, 17:10, "Patcas"
Voilà mon travailhttp://cjoint.com/?derh3Ug1MH
le probleme est dans l'onglet LYON
je voudrais inserrer une ligne dans le tableau col A a col L
sans modifier les tableaux qui sont à droite
Merci de votre aide

Patrice

"JB"
Post ton tableau surhttp://www.cjoint.com

On 4 mar, 16:38, "Patcas"


Merci mais je n'y arrive pas
je souhaite qu'une ligne entre les colonnes A et L
s'inserre avant la derniere ligne de mon tableau
avec les formules et de telle maniere que les plages qui se trouvent
à l'interieur de formules dans d'autres tableaux
dans d'autres onglets soient modifiées automatiquement
Si on rajoute une ligne a la fin les plages ne sont pas modifiées
Je ne sais si je suis clair.....
la formule d'excelabo fonctionne pour la ligne entiere
je souhaiterais que cela ne concerne que la ligne entre A et L

Merci encore

PAtrice

"JB"
Bonjour,

On veut insérer une ligne avec la même présentation
Placer le curseur sur la ligne

Sub InsèreLigne()
If Selection.Count = 1 And ActiveCell <> "" Then
ncol = ActiveCell.CurrentRegion.Columns.Count
coldébut = ActiveCell.CurrentRegion.Column
Cells(ActiveCell.Row, coldébut).Resize(1, ncol).Select
Selection.Insert Shift:=xlDown
Selection.Offset(-1, 0).Copy ActiveCell
Selection.SpecialCells(xlCellTypeConstants, 23).ClearContents
End If
End Sub

http://cjoint.com/?deqt2wkuaB

JB

On 4 mar, 15:22, "Patcas"
Bonjour
j'ai trouvé cette macro sur le site Excelabo

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

Elle va bien sur plusieurs tableaux mais j'ai quand meme un probleme
J'ai un onglet avec 2 tableaux cote à cote
et je voudrais me servir de cette formule pour rajouter une ligne
dans un seul tableau (entre colonne A et colonne L)
et ne pas modifier le second tableau qui est entre les col N et W
Je dois changer "EntireRow" certainement mais comment et par quoi.....

Merci à tous

Patrice C.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -


- Afficher le texte des messages précédents -




Publicité
Poster une réponse
Anonyme