Regrouper plusieurs feuilles de plusieurs fichiers dans un même classeur

Résolu
FMAILYS - 22 nov. 2012 à 19:17
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 24 nov. 2012 à 01:46
Bonjour

Pour le travail de fin d'année et notamment la DADSU, J'aimerais regrouper dans un même fichier les éléments de plusieurs feuilles de plusieurs classeurs à l'aide d'une vba.

Voir dans mon fichier joint. On a par exemple un fichier URSSAF 1 avec 4 feuilles Export, un fichier URSSAF 2 avec 2 feuilles Export et le fichier URSSAF 3 qui comprend aussi 2 feuilles.
Dans un fichier que j'appellerais REGROUPEMENT, j'aurais une feuille s'appelant PARAM dans laquelle je mettrais le chemin des fichiers, le nom des classeurs ainsi que les feuilles concernées.
Dans le deuxième onglet, j'aurais le regroupement désiré

Voici mon fichier
http://cjoint.com/?3KwrmJu2meo

Quelqu'un peut il m'aider

Merci par avance

Cdt

9 réponses

Bonsoir

Voilà, je me suis initié ce soir à la vba concernant mon projet suite aux conseils de ucfoutu

Mon code :
Sub Regroupement()
'J'écris mes en-têtes de colonnes
Range("a1") = "Matricule"
Range("B1") = "Nom"
Range("C1") = "Prénom"
Range("D1") = "Section AT"
Range("E1") = "Code Risque AT"
Range("F1") = "Code Risque Bureau"
Range("G1") = "Taux AT"
Range("H1") = "Brut SS"
Range("I1") = "Plaf SS"
Range("J1") = "csg/crds sur revenus d'activité"
Range("K1") = "CSG/CRDS sur revenus de remplacement"
Range("L1") = "Base Brute Fiscal"
Range("M1") = "Net Imposable"
Range("N1") = "Avantages Nat"
Range("O1") = "Frais Prof"
Range("P1") = "Epargne Salariale"
Range("Q1") = "Nombre Actions"
Range("R1") = "Valeur Unitaire"
Range("S1") = "Date attribution"
Range("T1") = "Date d'acquisition définitive"
Range("U1") = "Temps Travail Payé"
Range("V1") = "Code Indemnité fin contrat"
Range("W1") = "Montant Indemnité versée"
Range("X1") = "Code Statut Catégoriel Conventionnel"
Range("Y1") = "Code Statut Catégoriel AGIRC ARRCO"
Range("Z1") = "Code convention Collective"
Range("AA1") = "Classement Conventionnel"
Range("AB1") = "Brut Congés Payés"
Range("AC1") = "Sommes Isolées"
Range("AD1") = "Prévoyance TA"
Range("AE1") = "Prévoyance TB"
Range("AF1") = "Prévoyance TC"
Range("AG1") = "Prévoyance TD"

'J'ouvre le classeur URSAFF 1.xls
Workbooks.Open "F:\PROJET DADS-U\URSAFF 1.XLS"
'Je copie les données de la feuille Export 0
Workbooks("URSAFF 1.xls").Sheets("Export 0").Range("C2:K41").Copy
Workbooks("Regroupement.xlsm").Activate
Workbooks("Regroupement.xlsm").Sheets("Fichier de contrôle").Range("A2").Select
Workbooks("Regroupement.xlsm").Sheets("Fichier de contrôle").Paste
'Fermeture de URSAFF 1.xls
Workbooks("URSAFF 1.xls").Close

End Sub

Mon souci. Je sou
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 nov. 2012 à 19:43
Bonjour,
Une fois de plus dans la section non appropriée
Forum > Visual Basic 6
et non Langages dérivés > VBA !
Il faudra que - une fois de plus - un administrateur bienveillant ma déplace !!!
C'est lassant, mais également gênant !
Je vais donc me contenter de te dire que ce sujet est récurrent et que le moteur de recherche de ce forum te conduira à un grand nombre de discussions à ce sujet, avec solutions.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
Merci beaucoup pour cette réponse
Je vous présente toutes mes excuses pour mes erreurs de catégories mais je n'arrive jamais à trouver la bonne catégorie
Je suis novice et j'ai vraiment besoin que l'on m'aide à la réalisation de ce projet c pourquoi j'ai mis ce fichier en ligne
Merci de votre aide svp
Cdt
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 nov. 2012 à 20:43
c pourquoi j'ai mis ce fichier en ligne

Comportement à modifier également....
Si tu lisais ce forum (comme d'autres et moi-même), tu saurais que seuls les moins prudents ouvrent des classeurs qu'ils n'ont pas créés eux-mêmes. Et tu en connaîtrais les raisons !
Ici : on ne "met pas son classeur sur la table" en guise d'explications ! On isole son problème, on expose les tenants et aboutissants et on montre (entre balises code) les lignes de code écrites pour tenter de résoudre cette seule difficulté technique.
Alors ? ===>>> Si tu veux de l'aide ===>> fais cet effort-là ! Novice ou pas (et tu es là depuis trois mois) cet effort est nécessaire.
Merci de respecter cette règle.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
23 nov. 2012 à 03:20
Bonjour,

Coudonc, ils ne vous montrent pas à programmer à l'école avant de vous foutre dans des affaires de-même ?

Ce n'est absolument pas à des répondeurs bénévoles de faire bénévolement le travail des professeurs.

Et puis, tous ces sigles pour donner un petit air supérieur.

Cela veut dire quoi DADSU ? Probablement Dernier Appel Des Services Utopiques.

Et puis URSSAF ? URSS Air Force, je suppose.
0
Excusez moi
mon souci.
1 - Je souhaite que la macro se déclenche à l'ouverture du fichier regroupement
2 - Quand je vais importer la feuille Export 1 de mon fichier URSAFF 1, je veux qu'il récupère les données de la colonne correspondante pour le salarié concerné

Ci-joint mes fichiers

http://cjoint.com/?BKxwhXNazVJ

Merci de votre aide

Cdt
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
23 nov. 2012 à 23:31
lol
URSSAF : Union de recouvrement de la sécurité sociale et allocations familiales
DADS : Déclaration annuelle des données sociales

@ FMAILYS :
Tes questions trouvent réponses parmi les codes ou les précédentes questions du forum.
Il faut que tu fasses un minimum de recherche et d'auto-formation.
Nous ne sommes pas des professeurs ni des fournisseurs de codes à la demande - c'est le boulot des professionnels.

Inutile de fournir tes fichiers, personne ne les téléchargera (par sécurité), surtout si tu n'as pas pris le soin d'utiliser les outils de génération de lien mis à ta disposition.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
Merci de votre réponse
J'essaie de me débrouiller mais ce n'est pas évident
Je suis motivé pour y arriver donc ça devrait aller

Je peux continuer mais je sèche quand au code à utiliser pour mettre les donénes de la feuille suivante à la suite de celle-là

Cdt
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 nov. 2012 à 01:46
Sais-tu le faire à la main ?
Si oui, enregistre une macro pendant que tu fais les manips : Tu auras ainsi la trame des lignes de programme qu'il te suffira d'affiner pour y incorporer tes variables et améliorations.
0
Rejoignez-nous