Synthèse de plusieurs onglets
Résolu
en2mots
Messages postés
166
Date d'inscription
Statut
Membre
Dernière intervention
-
Maurice -
Maurice -
Bonjour,
Ci-dessous le fichier relatif à ma question.
https://mon-partage.fr/f/v36kz6vI/
Normalement, mon fichier complet possédera 125 onglets numérotés + un onglet "synthèse".
je voudrais une macro sur l'onglet synthèse qui recupère les infos de chaque onglet numéroté pour les insérer dans les colonnes : F, G, H, I, K, M, P, R, T et W
L'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés
L'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés
L'info de la colonne H doit correspondre à la cellule D30 des onglets numérotés
L'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés
L'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés
L'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés
L'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés
L'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés
L'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés
L'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés
Condition :
les onglets numérotés ne doivent pas être (nous ferons des copier coller sur les onglets d'ù l'importance de garder la structure telle quel modifiés dans leur structure y compris la fusion des cellules car ce sont des documents déjà utilisés comme tels et on ne pourra pas les modifier au près des personnes qui rempliront le document.
Il doit y avoir 125 onglets numérotés au final
Merci pour votre aide
Ci-dessous le fichier relatif à ma question.
https://mon-partage.fr/f/v36kz6vI/
Normalement, mon fichier complet possédera 125 onglets numérotés + un onglet "synthèse".
je voudrais une macro sur l'onglet synthèse qui recupère les infos de chaque onglet numéroté pour les insérer dans les colonnes : F, G, H, I, K, M, P, R, T et W
L'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés
L'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés
L'info de la colonne H doit correspondre à la cellule D30 des onglets numérotés
L'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés
L'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés
L'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés
L'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés
L'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés
L'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés
L'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés
Condition :
les onglets numérotés ne doivent pas être (nous ferons des copier coller sur les onglets d'ù l'importance de garder la structure telle quel modifiés dans leur structure y compris la fusion des cellules car ce sont des documents déjà utilisés comme tels et on ne pourra pas les modifier au près des personnes qui rempliront le document.
Il doit y avoir 125 onglets numérotés au final
Merci pour votre aide
A voir également:
- Synthèse de plusieurs onglets
- Restaurer les onglets chrome - Guide
- Ouvrir plusieurs onglets en même temps - Guide
- Regrouper plusieurs onglets excel en un seul - Guide
- Onglets - Guide
- Quand j'ouvre google chrome plusieurs onglets s'ouvrent ✓ - Forum Google Chrome
6 réponses
Bonjour,
Voici une macro pour effectuer le report des données.
Remarque : il me semble que l'emplacement des données dans ton classeur ne correspond pas exactement à ce que tu as indiqué.
A vérifier ...
A+
Voici une macro pour effectuer le report des données.
Sub Test()
Dim Ws As Worksheet
Dim Ligne As Integer
Application.ScreenUpdating = False
For Each Ws In Worksheets
If Ws.Name <> "SYNTHESE" Then
Ligne = CInt(Ws.Name) + 3
With Worksheets("SYNTHESE")
'L 'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés
.Cells(Ligne, "F") = Ws.Range("D20")
'L 'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés
.Cells(Ligne, "G") = Ws.Range("D25")
'L 'info de la colonne H doit correspondre à la cellule D30 des onglets numérotés
.Cells(Ligne, "H") = Ws.Range("D30")
'L 'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés
.Cells(Ligne, "I") = Ws.Range("C36")
'L 'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés
.Cells(Ligne, "K") = Ws.Range("B53")
'L 'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés
.Cells(Ligne, "M") = Ws.Range("B54")
'L 'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés
.Cells(Ligne, "P") = Ws.Range("B61")
'L 'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés
.Cells(Ligne, "R") = Ws.Range("B62")
'L 'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés
.Cells(Ligne, "T") = Ws.Range("B63")
'L 'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés
.Cells(Ligne, "W") = Ws.Range("B68")
End With
End If
Next Ws
Application.ScreenUpdating = True
End Sub
Remarque : il me semble que l'emplacement des données dans ton classeur ne correspond pas exactement à ce que tu as indiqué.
A vérifier ...
A+
Bonjour,
Je dois faire l'addition des tous les onglets(de 1 à 50)?
Je dois faire l'addition des tous les onglets(de 1 à 50)?
non, en fait nous nous allons remplir uniquement les onglets de 1à 125 (dans la réalité), et on nous demande de reporter aussi les infos des 125 onglets dans le tableau synthèse. En fait je voudrais par exemple quand je saisie la fiche de l'onglet 1, que les infos saisies se reportent en synthèse sur la ligne qui porte le numéro 1 (au niveau des numéros colonne A) etc.... et ça pour
L'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés
L'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés
L'info de la colonne H doit correspondre à la cellule D30 des onglets numérotés
L'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés
L'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés
L'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés
L'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés
L'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés
L'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés
L'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés
En temps normal des formules suffiraient mais 125 onglets et 125 lignes c pas possible... je voudrais une macro qui se réfère au numéro d'onglet 1, 2, 3, 4 etc et qui reporte en synthèse par rapport au numéro en colonne A les infos des références ci-dessus
L'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés
L'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés
L'info de la colonne H doit correspondre à la cellule D30 des onglets numérotés
L'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés
L'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés
L'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés
L'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés
L'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés
L'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés
L'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés
En temps normal des formules suffiraient mais 125 onglets et 125 lignes c pas possible... je voudrais une macro qui se réfère au numéro d'onglet 1, 2, 3, 4 etc et qui reporte en synthèse par rapport au numéro en colonne A les infos des références ci-dessus
Bonjour
tu peux aussi faire comme ca
A+
Maurice
tu peux aussi faire comme ca
Sub TestOnglet() Dim Onglet As String On Error Resume Next Sheets("SYNTHESE").Select Application.ScreenUpdating = False For F = 4 To Range("A" & Rows.Count).End(xlUp).Row Onglet = Range("A" & F).Value With Sheets(Onglet) Range("F" & F).Value = .Range("D20") Range("G" & F).Value = .Range("D25") Range("H" & F).Value = .Range("D30") Range("I" & F).Value = .Range("C36") Range("K" & F).Value = .Range("B53") Range("M" & F).Value = .Range("B54") Range("P" & F).Value = .Range("B61") Range("R" & F).Value = .Range("B62") Range("T" & F).Value = .Range("B63") Range("W" & F).Value = .Range("B68") End With Next Application.Goto [A4], True End Sub
A+
Maurice
Bonjour
je veux bien regarder mes il me faut au mouin un modèle de ton fichier
avec ta macro
A+
Maurice
je veux bien regarder mes il me faut au mouin un modèle de ton fichier
avec ta macro
A+
Maurice
https://www.cjoint.com/c/FFCnnRnc6qV
Voilà le fichier. L'onglet qui devrait s'appeler "1" j'ai modifier et en fait à ce jour je ne sais pas quel noms seront donnés aux onglets mais ça peut être chiffres et lettres ou juste un mot ou deux
Merci pour ton aide
Voilà le fichier. L'onglet qui devrait s'appeler "1" j'ai modifier et en fait à ce jour je ne sais pas quel noms seront donnés aux onglets mais ça peut être chiffres et lettres ou juste un mot ou deux
Merci pour ton aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
a mettre dans un module
A+
Maurice
a mettre dans un module
Sub Recap() Dim Ws As Worksheet Dim Ligne As Integer Ligne = 4 Application.ScreenUpdating = False For Each Ws In Worksheets If Ws.Name <> Feuil1.Name Then ' Ligne = CInt(Ws.Name) + 3 With Feuil1 'L 'info de la colonne F doit correspondre à la cellule D20 des onglets numérotés .Cells(Ligne, "F") = Ws.Range("D20") 'L 'info de la colonne G doit correspondre à la cellule D25 des onglets numérotés .Cells(Ligne, "G") = Ws.Range("D25") 'L 'info de la colonne H doit correspondre à la cellule B30 des onglets numérotés .Cells(Ligne, "H") = Ws.Range("B33") 'L 'info de la colonne I doit correspondre à la cellule C36 des onglets numérotés .Cells(Ligne, "I") = Ws.Range("C36") 'L 'info de la colonne K doit correspondre à la cellule B53 des onglets numérotés .Cells(Ligne, "K") = Ws.Range("B53") 'L 'info de la colonne M doit correspondre à la cellule B54 des onglets numérotés .Cells(Ligne, "M") = Ws.Range("B54") 'L 'info de la colonne P doit correspondre à la cellule B61 des onglets numérotés .Cells(Ligne, "P") = Ws.Range("B61") 'L 'info de la colonne R doit correspondre à la cellule B62 des onglets numérotés .Cells(Ligne, "R") = Ws.Range("B62") 'L 'info de la colonne T doit correspondre à la cellule B63 des onglets numérotés .Cells(Ligne, "T") = Ws.Range("B63") 'L 'info de la colonne W doit correspondre à la cellule B68 des onglets numérotés .Cells(Ligne, "W") = Ws.Range("B68") Ligne = Ligne + 1 End With End If Next Ws Application.ScreenUpdating = True End Sub
A+
Maurice
Désolé si je te déranger mais tu pourrai m'expliquer comment l'objet "ws" change de feuille sans que tu le dise?
Avec la boucle For Each Ws In Worksheets ... Next Ws
Traduction : pour chaque feuille de l'ensemble des feuilles du classeur ...
Avec cette boucle, toutes les feuilles sont traitées. Il reste alors à isoler celle qui ne doit pas être prise en compte, à savoir la feuille "SYNTHESE" avec l'instruction
If Ws.Name <> "SYNTHESE" Then
A+