Excel 2007 - copie de cellule VBA

Bonjour à tous !!

je reviens sur ce forum qui m'a bien aidé déjà auparavant pour une question sur une macro sur excel 2007.

Voila comme vous allez le voir sur le fichier en pièce jointe, il y a 6 feuilles dans mon classeur. Ce que je veux c'est que lorsque que je remplie les données dans la première feuille (dans les cases bleu ciel) , par l'intermediaire d'une macro que toute ces données se recopie dans les cases correspondantes des 4 feuilles fournisseurs suivantes. La derniere feuille ne compte pas car ce ne sont que des calculs.

Voila ma demande.

Merci d'avance.

Matthieu.

Bonjour le forum,matthieu24

Ne serait-il pas plus judicieux et plus simple d'utiliser simplement une formule ?

='Quantité pdts & Données frs'!B2

Amicalement

Joseph

10quemeng.xlsb (22.08 Ko)

bien sur que si mais ce que je veux c'est qu'en utilisant cette macro je me retrouve sur la dernière page pour voir le résultat des calculs mais si c'est trop compliqué je ferais avec formule c'est pas grave !!

merci !!

Bonsoir le forum, matthieu24

En espérant que cela pourra convenir.

Voir fichier joint

Amicalement

Joseph

PS : il faudra à l'avenir joindre tes fichiers au format .xls

Tout le monde ne possède pas Excel 2007

21fichiermatthieu.zip (22.37 Ko)

Merci de ton aide mais en l'executant à l'aide d'un bouton, j'obtiens une erreur que je ne comprends pas. j'ai vérifié le code (qui est simple) et je ne vois pas ou est l'erreur !!

merci d'avance.

je remet le dernier fichier en pièce jointe.

Bonsoir à tous,

L'erreur vient du fait que certains noms d'onglets n'est pas reconnu,

Sheets("Kumpas ").Range("B2").Value = .....etc...

"Kumpas ", la macro à un espace à la fin, l'onglet non !

Tu devrais virer tous les espaces, aussi bien en macro et en nom (renommer sans espace)

çà ira déjà mieux

Amicalement

Claude.

Merci beaucoup ça marche nikel !!!

encore une fois merci a toi et à ce forum !!*

matthieu

re,

cette macro boucle sur toutes les feuilles sans tenir compte de l'orthographe

Sub copier()
'par Claude pour "matthieu24" le 30/12/09
Dim NbF As Byte, i As Byte, Sh
        NbF = Worksheets.Count - 1
        Sh = Worksheets(1).Name
    For i = 2 To NbF
        With Sheets(i)
        MsgBox ("Copie dans " & Worksheets(i).Name)
            .Range("B2").Value = Range("B2")
            .Range("B3").Value = Range("B3")
            .Range("B4").Value = Range("B4")
            .Range("B5").Value = Range("B5")
            .Range("B6").Value = Range("B6")
            .Range("C2").Value = Range("B11")
            .Range("C3").Value = Range("B12")
            .Range("C4").Value = Range("B13")
            .Range("C5").Value = Range("B14")
            .Range("C6").Value = Range("B15")
            .Range("I2").Value = Range("B19")
            .Range("I3").Value = Range("B20")
            .Range("I4").Value = Range("B21")
            .Range("I5").Value = Range("B22")
            .Range("I6").Value = Range("B23")
            .Range("I8").Value = Range("D3")
            .Range("I10").Value = Range("D7")
        End With
    Next
End Sub

Amicalement

Claude

22essai-copier.zip (19.23 Ko)

édit:

la feuille "Quantité pdts…." doit être placée en 1er

la feuille "meilleur forum…." doit être placée en dernier

édit2: les ".Value" ne servent à rien !

Sub copier()
'par Claude pour "matthieu24" le 31/12/09
Dim NbF As Byte, i As Byte, Sh
        NbF = Worksheets.Count - 1
        Sh = Worksheets(1).Name
    For i = 2 To NbF
        With Sheets(i)
        MsgBox ("Copie dans " & Worksheets(i).Name)
            .Range("B2") = Range("B2")
            .Range("B3") = Range("B3")
            .Range("B4") = Range("B4")
            .Range("B5") = Range("B5")
            .Range("B6") = Range("B6")
            .Range("C2") = Range("B11")
            .Range("C3") = Range("B12")
            .Range("C4") = Range("B13")
            .Range("C5") = Range("B14")
            .Range("C6") = Range("B15")
            .Range("I2") = Range("B19")
            .Range("I3") = Range("B20")
            .Range("I4") = Range("B21")
            .Range("I5") = Range("B22")
            .Range("I6") = Range("B23")
            .Range("I8") = Range("D3")
            .Range("I10") = Range("D7")
        End With
    Next
End Sub
Rechercher des sujets similaires à "2007 copie vba"