Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

copier des formules avec les mois

berto

XLDnaute Occasionnel
Bonjour
Je cherche a faire des copier/coller de formules avec chaque mois (voir fichier joint, onglet calcul) je voudrais copier toutes les formules du mois de février sur les autres mois mais en copiant la même formule mais avec Mars, Avril,Mai etc ...
merci de votre aide
cordialement
 

Pièces jointes

  • Informations voyageur point d'arrêt avec abri voyageur 2018.xls
    3 MB · Affichages: 20

Lone-wolf

XLDnaute Barbatruc
Bonjour berto

À mettre dans un module standard

VB:
Sub Copier_Formules()
Dim derlig&, col&, f

    On Error Resume Next
    Application.ScreenUpdating = False
 
    f = Array("mars", "avril", "mai", "juin", "juillet-août", "septembre", "octobre", "novembre", "décembre")
    derlig = Sheets("février").Cells(Rows.Count, "F").End(xlUp).Row
 
    For col = 6 To 104 Step 1
        Sheets("février").Cells(derlig, col).Copy
        Sheets(f).Cells(4, col).PasteSpecial Paste:=xlPasteFormulas
    Next col
 
    Application.CutCopyMode = 0
    Application.Goto Sheets("mars").Range("e4")
End Sub
 
Dernière édition:

berto

XLDnaute Occasionnel
 

berto

XLDnaute Occasionnel
Bonsoir
Merci mais j’ai pas tout compris en fait j’en veux que toutes les formules du mois de Février soient les mêmes pour les autres mois il faut que je copie mais qu’au lieu de février se soit mars, avril’ mai etc...merci de votre aide et est-ce possible de me dire la manipulation pour faire cela ou le module standard ?
Cordialement
 

Lone-wolf

XLDnaute Barbatruc
Re

C'est ce que fait la macro, il faut savoir lire. Si c'est les formules des colonnes masquées.
Les autres les ont déjà.

f = Array("mars", "avril", "mai", "juin", "juillet-août", "septembre", "octobre", "novembre", "décembre")
Ce sont les noms des feuilles.

Voici une autre macro plus rapide

VB:
Sub Copier_Formules()
Dim derlig&, col&, k&, tablo(), tbl, f

    On Error Resume Next
    Application.ScreenUpdating = False

    f = Array("mars", "avril", "mai", "juin", "juillet-août", "septembre", "octobre", "novembre", "décembre")
    derlig = Sheets("février").Cells(Rows.Count, "F").End(xlUp).Row
    k = 3
    With Sheets("février")
        For col = 6 To 104 Step 1
            tbl = .Range("f4:" & .Cells(derlig, col))
            For i = 1 To UBound(tbl)
                k = k + 1
                tablo(tbl(k, col)) = tbl(i, col)
            Next i
        Next col
    End With

    Sheets(f).Range("f4").Resize(UBound(tablo, 1), UBound(tablo, 2)) = tablo
End Sub
 

berto

XLDnaute Occasionnel
Merci de votre aide mais comment je fais un macro ?
 

Lone-wolf

XLDnaute Barbatruc
Re

Pas besoin de la faire, puisque je l'ai faite ?! Ton classeur avec la macro. Pour la voir, clique sur Developpeur si tu l'as. Sinon, clic-droit sur la feuille, clique sur visualiser le code. À gauche tu verra Module 1. Clique dessus.
 

Pièces jointes

  • Informations voyageur point d'arrêt avec abri voyageur 2018-2.xlsm
    2.2 MB · Affichages: 15

Lone-wolf

XLDnaute Barbatruc
Re

@berto

si tu passe par ici. Il y a un problème avec la dernière macro. Prend cette version.
 

Pièces jointes

  • Informations voyageur point d'arrêt avec abri voyageur 2018-2-V3.xlsm
    2.2 MB · Affichages: 20
Dernière édition:

JHA

XLDnaute Barbatruc
Bonjour à tous,

Un peu fastidieux mais avec la fonction indirect(), tu crées la première ligne de janvier et tu copies vers le bas.

JHA
 

Pièces jointes

  • Informations voyageur point d'arrêt avec abri voyageur 2018.xls
    3 MB · Affichages: 19

Discussions similaires

Réponses
17
Affichages
1 K
Réponses
46
Affichages
884
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…