Finalisation d'une petite macro

yolutho

XLDnaute Nouveau
Bonjour,

Voici une petit macro sur laquelle je travaille mais je ne parviens pas à la finaliser.

En effet, je ne parviens pas à mentionner le choix d'une cellule correspondant à l'ActiveCell.Row

Sub Insr_ligne()
If ActiveCell.Row > 10 Then
Call Dévérouiller
Selection.EntireRow.Insert
Range("A10:S10").Copy .Range(cellule X de activeCell.row).PasteSpecial: xlPasteFormulas
Call Vérouiller
End If
End Sub

Pour être plus précis, je donne un exemple. J'active la cellule E15, et j'active ma macro via un bouton. Je souhaiterais que les formules de la plage de cellule A10:S10 soient copier à partir de la cellule E10.

Merci de vos contributions

P.S. : Je vous joins un petit fichier exposant la situation.
 

Fichiers joints

Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Bonjour,

peut être comme ceci, enfin si j'ai bien compris pas sur..
Code:
Range("A10:S10").Copy
ActiveCell.Offset(-5).PasteSpecial xlPasteFormulas
bonne journée
@+
 

yolutho

XLDnaute Nouveau
Re : Finalisation d'une petite macro

Pierrot93

Merci de ta proposition mais cela ne fonctionnerais pas car je dois pouvoir sélectionner n'importe quelle cellule avant l'insertion de la nouvelle ligne.

Merci
 

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Re,

je me suis basé sur ce :
Pour être plus précis, je donne un exemple. J'active la cellule E15, et j'active ma macro via un bouton. Je souhaiterais que les formules de la plage de cellule A10:S10 soient copier à partir de la cellule E10.
donc un décalage de 5 lignes par rapport à la cellule active...
 

yolutho

XLDnaute Nouveau
Re : Finalisation d'une petite macro

Je ne dis pas que ta formule ne fonctionne pas c'est qu'elle ne cadre pas avec ce que je souhaite réalisé.
Je me suis mal exprimé car tu n'a pas compris mon exemple. Mea culpa.

D'ailleurs, je conserve ta proposition pour une autre macro dans laquelle elle m'est bien utile. ;)
 

yolutho

XLDnaute Nouveau
Re : Finalisation d'une petite macro

Pour éviter de me lancer dans des explicitations incompréhensible, je mets en pièce jointe un petit fichier.
 

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Re,

regarde ceci, mais sans doute lie d'adapter :
Code:
Sub Insr_ligne()
    If ActiveCell.Row > 10 Then
        Selection.EntireRow.Insert
        Range("A10:F10").Copy
        Cells(ActiveCell.Row, 1).PasteSpecial xlPasteFormulas
    End If
End Sub
 

yolutho

XLDnaute Nouveau
Re : Finalisation d'une petite macro

Ta proposition fonctionne mais elle copie aussi les valeurs.

Je vais jeter un coup d’œil.

...

Quoi que je fasse la macro copie l'ensemble des informations alors que je ne souhaite reporter que les formules ... Pourquoi ?
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Re,

le collage spécial des formules colle la valeur de la cellule si pas de formule...
 

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Re,

bah... ne copie que les cellules où il y a des formules...
 

Pierrot93

XLDnaute Barbatruc
Re : Finalisation d'une petite macro

Re,

à tester :
Code:
Sub Insr_ligne()
Dim x As Long
    If ActiveCell.Row > 10 Then
        Selection.EntireRow.Insert
        x = ActiveCell.Row
        Range("A11:A" & Cells(Rows.Count, 1).End(xlUp).Row).FormulaR1C1 = "=R[-1]C + 1"
        Range("E" & x & ":F" & x).FormulaR1C1 = Range("E10:F10").FormulaR1C1
    End If
End Sub
 

yolutho

XLDnaute Nouveau
Re : Finalisation d'une petite macro

Bonjour Pierrot93,

Merci pour ton aide tout fonctionne bien.
Dès que j'ai un moment, je vais la décortiquer pour la comprendre et la modifier pour d'autres besoin.
Si tu le permets je te contacterais pour des explications.

Merci beaucoup pour ton aide. ;)
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas