Synthétiser des tableaux en 1 seul
buggy45
Messages postés
9
Statut
Membre
-
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai 6 tableaux dans 6 fichiers différents (même ligne de titres) je dois mettre les données dans 1 seul tableau RECAP.xlsm.
Dans la dernière colonne (W3) de mon tableau RECAP je dois inscrire le nom du fichier d'où proviennent les données.
Mon code est: Range("W3:W"& ActiveSheet.UsedRange.Rows.Count )="Karine"
Mais dans la colonne W, j'ai 1000 lignes avec "Karine"
Comment faire, je ne trouve pas de solution.
Le fichier Karine est le premier des 6.
merci de votre aide
J'ai 6 tableaux dans 6 fichiers différents (même ligne de titres) je dois mettre les données dans 1 seul tableau RECAP.xlsm.
Dans la dernière colonne (W3) de mon tableau RECAP je dois inscrire le nom du fichier d'où proviennent les données.
Mon code est: Range("W3:W"& ActiveSheet.UsedRange.Rows.Count )="Karine"
Mais dans la colonne W, j'ai 1000 lignes avec "Karine"
Comment faire, je ne trouve pas de solution.
Le fichier Karine est le premier des 6.
merci de votre aide
A voir également:
- Synthétiser des tableaux en 1 seul
- Excel regrouper plusieurs tableaux en un seul - Guide
- Tableaux croisés dynamiques - Guide
- Mise en forme tableau word - Guide
- Tableau des codes ascii - Guide
- Citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum Logiciels
2 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonsoir, tu n'as qu'une seule ligne de code?
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
moi je commencerais pas assainir le code et supprimer tous les select et activate.
Option Explicit
' supprimer la page sauf la 1er ligne
Sub DeleteExceptFirst()
Dim cl_classe As Workbook
Dim f_classe As Worksheet, f_recap As Worksheet
Dim AvantDerniereLigne As Long, DebutNomFichier As Long
Set f_recap = ThisWorkbook.Sheets("INSCRIPTIONS")
f_recap.Rows("2:" & Rows.Count).ClearContents
'Gras
f_recap.Range("A2:W2").Font.Bold = True
' Ecriture des titres :
f_recap.Range("A2") = "Date du Jour"
f_recap.Range("B2") = "Nom de l'Enfant"
f_recap.Range("C2") = "Prénom de l'Enfant"
f_recap.Range("D2") = "Date de naissance de l'Enfant"
f_recap.Range("E2") = "Civilité du responsable"
f_recap.Range("F2") = "Nom du responsable"
f_recap.Range("G2") = "Prénom du responsable"
f_recap.Range("H2") = "Adresse"
f_recap.Range("I2") = "Code postal"
f_recap.Range("J2") = "Commune"
f_recap.Range("K2") = "Catégorie"
f_recap.Range("L2") = "Commune précédente"
f_recap.Range("M2") = "Justificatif Domicile"
f_recap.Range("N2") = "Numéro d'inscription"
f_recap.Range("O2") = "Ecole Maternelle de Secteur"
f_recap.Range("P2") = "Ecole Primaire de Secteur"
f_recap.Range("Q2") = "Souhait de dérogation maternelle "
f_recap.Range("R2") = "Souhait de dérogation élémentaire"
f_recap.Range("S2") = "Motif de la dérogation"
f_recap.Range("T2") = "Décision de la commission"
f_recap.Range("U2") = "Frais de scolarité"
f_recap.Range("V2") = "Observations"
'ouverture dossier karine:
Set cl_classe = Workbooks.Open _
("M:\ROY\Inscriptions scolaires\Préparation inscription\Rentrée 2018\Tableaux inscriptions scolaires\Karine.xlsx")
Set f_classe = cl_classe.Sheets("Feuil1")
AvantDerniereLigne = f_classe.UsedRange.Rows.Count + 1
f_classe.Range("A3:V" & AvantDerniereLigne).copy destination:=f_recap.Range("A3")
f_recap.Range("W3:W" & f_recap.UsedRange.Rows.Count + 1) = "Karine.xlsx"
'fermeture du dossier Karine:
cl_classe.Close
'Ouverture du dossier valérie:
Set cl_classe = Workbooks.Open _
("M:\ROY\Inscriptions scolaires\Préparation inscription\Rentrée 2018\Tableaux inscriptions scolaires\Valérie.xlsx")
Set f_classe = cl_classe.Sheets("Feuil1")
AvantDerniereLigne = f_classe.UsedRange.Rows.Count + 1
DebutNomFichier = f_recap.UsedRange.Rows.Count + 1
f_classe.Range("A3:V" & AvantDerniereLigne).copy destination:=f_recap.Range("A" & DebutNomFichier)
f_recap.Range("W" & DebutNomFichier & ":W" & f_recap.UsedRange.Rows.Count) = "Valérie"
cl_classe.Close
'...
End Sub
Bonsoir.
Je veux bien le partager. Dis moi comment faire.
Mais de toute façon c’est assez simple.
J’ai un dossier avec 6 classeurs identiques remplis par 6 personnes différentes. Dans ce dossier j’ai créé un classeur récap (recap ESSAI )dont la feuille s’intitule « INSCRIPTIONS ».
L’orque je rapatrie les données des 6 classeurs, je voudrai que dans la colonne w s’inscit Le nom du classeur dont elles sont issues.
Cela marche. Sauf que pour le classeur « Karine » qui actuellement n’a pas encore de données j’ai dans la colonne w 1000 lignes avec le nom Karine.
Alors que je ne devrais avoir aucune ligne « Karine » mais enchaîner avec les données de « Valérie » avec inscription Valerie en colonne w.
Voilà.
Si ce n’est pas assez explicite je pourrai partager mon fichier si tu me donnes la marche à suivre
Merci beaucoup
Je veux bien le partager. Dis moi comment faire.
Mais de toute façon c’est assez simple.
J’ai un dossier avec 6 classeurs identiques remplis par 6 personnes différentes. Dans ce dossier j’ai créé un classeur récap (recap ESSAI )dont la feuille s’intitule « INSCRIPTIONS ».
L’orque je rapatrie les données des 6 classeurs, je voudrai que dans la colonne w s’inscit Le nom du classeur dont elles sont issues.
Cela marche. Sauf que pour le classeur « Karine » qui actuellement n’a pas encore de données j’ai dans la colonne w 1000 lignes avec le nom Karine.
Alors que je ne devrais avoir aucune ligne « Karine » mais enchaîner avec les données de « Valérie » avec inscription Valerie en colonne w.
Voilà.
Si ce n’est pas assez explicite je pourrai partager mon fichier si tu me donnes la marche à suivre
Merci beaucoup
Non j'ai plusieurs lignes de code, mais il me semble que c'est celle-là qui ne fonctionne pas.
Je vous joints le début de mon code:
' supprimer la page sauf la 1er ligne
Sub DeleteExceptFirst()
Rows("2:" & Rows.Count).ClearContents
'Gras
Range("A2:W2").Font.Bold = True
' Ecriture des titres :
Range("A2") = "Date du Jour"
Range("B2") = "Nom de l'Enfant"
Range("C2") = "Prénom de l'Enfant"
Range("D2") = "Date de naissance de l'Enfant"
Range("E2") = "Civilité du responsable"
Range("F2") = "Nom du responsable"
Range("G2") = "Prénom du responsable"
Range("H2") = "Adresse"
Range("I2") = "Code postal"
Range("J2") = "Commune"
Range("K2") = "Catégorie"
Range("L2") = "Commune précédente"
Range("M2") = "Justificatif Domicile"
Range("N2") = "Numéro d'inscription"
Range("O2") = "Ecole Maternelle de Secteur"
Range("P2") = "Ecole Primaire de Secteur"
Range("Q2") = "Souhait de dérogation maternelle "
Range("R2") = "Souhait de dérogation élémentaire"
Range("S2") = "Motif de la dérogation"
Range("T2") = "Décision de la commission"
Range("U2") = "Frais de scolarité"
Range("V2") = "Observations"
'ouverture dossier karine:
Workbooks.Open "M:\ROY\Inscriptions scolaires\Préparation inscription\Rentrée 2018\Tableaux inscriptions scolaires\Karine.xlsx"
AvantDerniereLigne = ActiveSheet.UsedRange.Rows.Count + 1
Workbooks("Karine.xlsx").Sheets("Feuil1").Range("A3:V" & AvantDerniereLigne).Copy
Workbooks("Recap ESSAI.xlsm").Activate
Workbooks("Recap ESSAI.xlsm").Sheets("INSCRIPTIONS").Range("A3").Select
Workbooks("Recap ESSAI.xlsm").Sheets("INSCRIPTIONS").Paste
Range("W3:W" & ActiveSheet.UsedRange.Rows.Count + 1) = "Karine.xlsx"
'fermeture du dossier Karine:
Workbooks("Karine.xlsx").Close
'Ouverture du dossier valérie:
Workbooks.Open "M:\ROY\Inscriptions scolaires\Préparation inscription\Rentrée 2018\Tableaux inscriptions scolaires\Valérie.xlsx"
AvantDerniereLigne = ActiveSheet.UsedRange.Rows.Count + 1
Workbooks("Valérie.xlsx").Sheets("Feuil1").Range("A3:V" & AvantDerniereLigne).Copy
Workbooks("Recap ESSAI.xlsm").Activate
DebutNomFichier = ActiveSheet.UsedRange.Rows.Count + 1
Workbooks("Recap ESSAI.xlsm").Sheets("INSCRIPTIONS").Range("A" & ActiveSheet.UsedRange.Rows.Count + 1).Select
Workbooks("Recap ESSAI.xlsm").Sheets("INSCRIPTIONS").Paste
ActiveSheet.Range("W" & DebutNomFichier & ":W" & ActiveSheet.UsedRange.Rows.Count) = "Valérie"
Application.CutCopyMode = False
Workbooks("Valérie.xlsx").Close
Même code pour les 4 fichiers suivants.
Merci de votre aide
ActiveSheet.Range("W" & DebutNomFichier & ":W" & ActiveSheet.UsedRange.Rows.Count) = "Valérie"Ma demande : je souhaite que le tableau recap où sont rapatriées toutes les données des autres tableaux me mettent dans la colonne W le nom du fichier d'où elles proviennent.
Ainsi concernant le fichier karine, dans la colonne W de mon tableau RECAP, j'ai 1000 "karine" alors que je n'ai rapatrié aucune données, vu qu'à ce moment là je n'e'n avais pas encore, le tableau du fichier Karine étant vide
merci
Range("W3:W" & ActiveSheet.UsedRange.Rows.Count + 1) = "Karine.xlsx"
qui me met en colonne W 1000 lignes de "Karine"
Merci