Boucle de saisie

isabelle29

XLDnaute Nouveau
Bonsoir à tous,
J'ai une question que je n'arrive pas à résoudre alors je voudrais alimenter un fichier source qui contient un tableau de 24 mois par des données qui se trouvent dans différentes feuilles d1 , d2, d3.
Alors j'aimerais bien une fonction qui prend une plage de cellule précise dans les différentes fichiers d1,d2,d3 et le faire copier coller sur le fichier source. cad :
- Copier d1 en mois de janvier du dossier source
- Copier d2 en mois de Février du dossier source
- Copier d3 en mois de Mars du dossier source
Le code en dessous fait normalement un copier coller de données mais les données se place toujours dans le mois de janvier même pour les autres mois février et mars ils sont mis automatiquement sur janvier
Workbooks.Open Filename=fichiersource
Sheets(facture).Select
ActiveWorkbook.ActiveSheet.Range(c3).Select
Selection.PasteSpecial Paste=xlPasteValues, Operation=xlNone, SkipBlanks _
=False, Transpose=False
Pour résoudre ce problème j'ai trouvé une solution de faire manuellement càd range "c3" =jan, range"d3"=fev....
Normalement sa fonctionne mais elle n'est pas assez opérationnel car si j'ai plusieurs mois c'est un peu dur
S'il vous plait est-ce que vous avez une solution pour que les données soient misent correctement dans chaque mois ?
Ps: La structure du fichier se trouve ci-joint.
Bonne fin de journée ,
 

Pièces jointes

  • boucle de saisie.xlsx
    13.6 KB · Affichages: 7

Dranreb

XLDnaute Barbatruc
Bonsoir.
Comme ça :
VB:
Sub Copier()
   Dim C As Long
   For C = 1 To 3
      Feuil1.[A3:A32].Offset(, C).Value = Worksheets("d" & C).[A3:A32].Value
      Next C
   End Sub
Remarque: si la macro est dans un autre classeur c'est plutôt comme ça :
VB:
Sub Copier()
   Dim WshSrc As Worksheet, C As Long
   Set WshSrc = Worksheets("Source")
   For C = 1 To 3
      WshSrc.[A3:A32].Offset(, C).Value = Worksheets("d" & C).[A3:A32].Value
      Next C
   End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof