Liaison entre les feuilles d'un classeur et copie partielle

cmrt

XLDnaute Nouveau
Bonjour

Je suis totalement ignare en Macro et je pense que pour réaliser mon projet, il faut une macro. Donc avec votre aide, j'espère pouvoir apprendre.

Voilà, j'ai un classeur Excel comportant 7 feuilles pour des établissements et une feuille récap. Je vais alimenter chacune des feuilles établissement et je voudrais que certaines des informations se copient automatiquement sur la feuille récap. J'ai rempli un exemple sur la feuille Agen. Et sur la feuille récap, j'ai copié chaque élément avec liaison. Si je dois le faire manuellement, ça va être très long et il y a un risque d'erreur. Y a t-il moyen de le faire automatiquement ?

Merci de votre aide.
 

Pièces jointes

  • Maquette club utilisateur.xls
    77 KB · Affichages: 84
Dernière édition:

bbb38

XLDnaute Accro
Re : Liaison entre les feuilles d'un classeur et copie partielle

Bonjour cmrt, le forum,
Une solution en vba à tester.
Cordialement,
Bernard
 

Pièces jointes

  • cmrt_Maquette club utilisateur.xls
    98.5 KB · Affichages: 88
  • cmrt_Maquette club utilisateur.xls
    98.5 KB · Affichages: 96
  • cmrt_Maquette club utilisateur.xls
    98.5 KB · Affichages: 95
Dernière édition:

cmrt

XLDnaute Nouveau
Re : Liaison entre les feuilles d'un classeur et copie partielle

Merci bbb38. Je regarde ça.

C'est génial ! Puis-je encore te solliciter pour me dire comment visualiser la macro car je voudrais vraiment comprendre, pour pouvoir le refaire ou la modifier.

Merci.
 
Dernière édition:

bbb38

XLDnaute Accro
Re : Liaison entre les feuilles d'un classeur et copie partielle

Bonjour cmrt, le forum,
Après ouverture du fichier, tu appuies les touches Alt + F11 (maintenir la touche Alt enfoncée, puis appuyer sur la touche F11). Si le code n’apparaît pas, tu cliques sur Module 1.
Cordialement,
Bernard
 

cmrt

XLDnaute Nouveau
Re : Liaison entre les feuilles d'un classeur et copie partielle

Merci.
J'ai essayé de décortiquer ta macro, histoire de la comprendre pour pouvoir la modifier si mon tableau évolue. Voici ce que j'ai compris. Aurais-tu la gentillesse de regarder et de corriger mes "traductions" ? C'est la première fois que je mets je nez dans une macro, alors excuse mes erreurs. Merci d'avance.

Private : procédure accessible uniquement par les procédures du même module
Sub : indique la création d’une procédure
MiseJour() : nom de la procédure
Application.ScreenUpdating : appelle la procédure Excel « ScreenUpdating » (rafraîchissement de l'affichage)
False : variable boléenne pouvant prendre la valeur vrai ou faux
Dim : déclaration de variable
i : nom de variable = nom de feuille
As Integer : indique que le type de données est un entier
j : nom de variable = ligne de la feuille ?
xrecapdlgn : nom de variable, laquelle ? d’après le nom la feuille récap
As Long : type de données, nombre entier
xongdlgn : nom de variable, laquelle ? d’après le nom les feuilles du classeur sauf la feuille récap
Range : sélection d’une plage de cellules
ClearContents : efface le contenu des cellules (avant de copier les données)
Sheets : sélectionne une feuille du classeur
(« Récap ») : correspond à la feuille « Récap »
(« A65536 ») : correspond à la dernière feuille possible du classeur ?
End(xlUp) : ?
Row + 1 : ?
For i=2 : pour i=2, la deuxième feuille du classeur
To : faire
ActiveWorkbook : dans le classeur actif
Worsheets : dans les feuilles
Count : compter
Worksheets(i) : les feuilles du classeur
Activate : activer (les feuilles)
xongdlgn : pour la variable xongdlgn
Sheets(i) : sélectionner toutes les feuilles
Range(« A65536 ») : jusqu’à la dernière feuille possible du classeur ?
End(xlUp) : ?
Row + 1 : ?
For j=4 : pour j=4 (ligne 4 des feuilles ?)
To xongdlgn : jusqu’à la dernière
If : si (condition pour effectuer une action)
Range : la plage sélectionnée
(« K&j ») : la colonne K
<> : ?
ײ ײ : ?
Then : alors (appliquer la commande)
Worksheets(i) : dans chaque feuille
Range (« K1 ») : sélectionner la cellule K1
Copy : la copier
Worksheets (« Récap ») : dans la feuille Récap
Range (« A » & xrecapdlgn) : dans la colonne A
Idem pour chaque colonne à copier
xrecapdlgn = xrecapdlgn + 1 : ?
End If : fin de l’action conditionnelle
Next j : traitement de toutes les ligne
Next i : traitement de toutes les feuilles
Worksheets(« Récap ».Activate : activation de la feuille Récap
Range (« A1 » Select : sélectionner la cellule A1
Application.ScreeUpdating = True : Rafraîchissement de l’affichage
End Sub : fin de la procédure
 
Dernière édition:

bbb38

XLDnaute Accro
Re : Liaison entre les feuilles d'un classeur et copie partielle

Bonjour cmrt, le forum,
J’ai repris tes traductions et ajouter mes commentaires avant chaque ligne d’instruction de la macro.
Par contre, je ne sais pas si mes explications seront assez claires.
Cordialement,
Bernard
 

Pièces jointes

  • cmrt_Maquette club utilisateur.xls
    103.5 KB · Affichages: 72
  • cmrt_Maquette club utilisateur.xls
    103.5 KB · Affichages: 90
  • cmrt_Maquette club utilisateur.xls
    103.5 KB · Affichages: 78

cmrt

XLDnaute Nouveau
Re : Liaison entre les feuilles d'un classeur et copie partielle

Bonjour

merci beaucoup pour ces explications. Tu es parfaitement clair. Maintenant, je pense avoir compris la structure et le fonctionnement de ta macro. :D

C'est très intéressant, du coup j'ai demandé une formation dans le cadre du boulot... :cool:

Encore merci de ton aide.
Bien cordialement.
Christine
 

Discussions similaires

Réponses
4
Affichages
379

Statistiques des forums

Discussions
312 500
Messages
2 089 013
Membres
104 004
dernier inscrit
mista