XL 2016 Coller plusieurs colonne de feuilles différentes dans une feuille synthèse

MR.O

XLDnaute Junior
Bonjour,

Je souhaiterais récupérer et consolider dans une feuille nommé synthèse, des données se trouvant dans une plage identique (L8 : L23) dans chaque feuille de S1 à S52 et les coller dans la colonne correspondant au numéro de semaine.

Merci d'avance pour votre aide,

Cordialement,
 

Pièces jointes

  • Planning activité logistique.xlsx
    33 KB · Affichages: 11

Jacky67

XLDnaute Barbatruc
Bonjour,

Je souhaiterais récupérer et consolider dans une feuille nommé synthèse, des données se trouvant dans une plage identique (L8 : L23) dans chaque feuille de S1 à S52 et les coller dans la colonne correspondant au numéro de semaine.

Merci d'avance pour votre aide,

Cordialement,
Bonjour,
En VBA cela pourrait ressembler à ceci.
Exemple en PJ
VB:
Sub MAJ()
    Dim sh As Worksheet, col&
    For Each sh In ThisWorkbook.Worksheets
        If sh.Name <> "Synthèse" Then
            With Sheets("Synthèse")
                col = Application.Match(sh.Name, .[2:2], 0)
                sh.[L8:L17].Copy:  .Cells(3, col).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
                sh.[L19:L22].Copy: .Cells(13, col).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
            End With
        End If
    Next
End Sub
 

Pièces jointes

  • Planning activité logistique.xlsm
    42.3 KB · Affichages: 11

MR.O

XLDnaute Junior
Bonjour,
En VBA cela pourrait ressembler à ceci.
Exemple en PJ
VB:
Sub MAJ()
    Dim sh As Worksheet, col&
    For Each sh In ThisWorkbook.Worksheets
        If sh.Name <> "Synthèse" Then
            With Sheets("Synthèse")
                col = Application.Match(sh.Name, .[2:2], 0)
                sh.[L8:L17].Copy:  .Cells(3, col).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
                sh.[L19:L22].Copy: .Cells(13, col).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
            End With
        End If
    Next
End Sub

Bonjour Jacky67,

Merci beaucoup cela fonctionne, mais pourquoi cela s’arrête à la S19 et ne continue pas pour les autres semaine ?

Cordialement,
 

Jacky67

XLDnaute Barbatruc
Bonjour Jacky67,

Merci beaucoup cela fonctionne, mais pourquoi cela s’arrête à la S19 et ne continue pas pour les autres semaine ?

Cordialement,
Re...
Je n'éprouve aucune difficulté pour afficher toutes les semaines si la feuille correspondante existe
Dans l'exemple joint ,seules les feuilles S20 et S21 sont présentes.

Ps: La proposition de ]djidji59430 fonctionne aussi très bien.
Il faut juste modifier à partir de la ligne 13 le 5 par 6
=SIERREUR(INDIRECT("'"&B$2&"'!L"&LIGNE()+6);"")
Et recopier vers le bas et la droite, et appliquer les bons formats
 
Dernière édition:

MR.O

XLDnaute Junior
Re...
Je n'éprouve aucune difficulté pour afficher toutes les semaines si la feuille correspondante existe
Dans l'exemple joint ,seules les feuilles S20 et S21 sont présentes.

Ps: La proposition de ]djidji59430 fonctionne aussi très bien.
Il faut juste modifier à partir de la ligne 13 le 5 par 6
=SIERREUR(INDIRECT("'"&B$2&"'!L"&LIGNE()+6);"")
Et recopier vers le bas et la droite, et appliquer les bons formats

Bonjour Jacky67,

Merci beaucoup pour ces explications, j'ai fais le test avec la formule de djidji59430 mais le fichier Excel est devenu très lourd et cela mets un temps fou à calculer, alors que pour l'instant je ne suis que à la semaine 32. Comment puis-je faire pour éviter ce temps de latence ?

Merci d'avance,

Cordialement,
 

Jacky67

XLDnaute Barbatruc
Bonjour Jacky67,

Merci beaucoup pour ces explications, j'ai fais le test avec la formule de djidji59430 mais le fichier Excel est devenu très lourd et cela mets un temps fou à calculer, alors que pour l'instant je ne suis que à la semaine 32. Comment puis-je faire pour éviter ce temps de latence ?

Merci d'avance,

Cordialement,
Re..
Si par vba, il y aussi une latence , le problème est ailleurs.
Par formule, le résultat doit être immédiat
 
Dernière édition:

MR.O

XLDnaute Junior
Re..
Si par vba, il y aussi une latence , le problème est ailleurs.
Par formule, le résultat doit être immédiat

Bonjour,

C'est l'inverse avec la formule il y a en bas à droite threads xx% cela mets un temps fou à calculer et à afficher les résultats dans les cellules, alors que VBA est plus rapide bizarre.

Est ce que tu pourrais me donner le code qui permet de faire l'extraction au fur et à mesure que je rajoute des feuilles dans mon classeur, car aujourd'hui par exemple nous sommes en semaine 33 donc j'ai rajouté une nouvelle feuille S33 et je ferais comme ça pour toutes les semaines à venir.

Merci d'avance,

Cordialement,
 

Jacky67

XLDnaute Barbatruc
Bonjour,

C'est l'inverse avec la formule il y a en bas à droite threads xx% cela mets un temps fou à calculer et à afficher les résultats dans les cellules, alors que VBA est plus rapide bizarre.

Est ce que tu pourrais me donner le code qui permet de faire l'extraction au fur et à mesure que je rajoute des feuilles dans mon classeur, car aujourd'hui par exemple nous sommes en semaine 33 donc j'ai rajouté une nouvelle feuille S33 et je ferais comme ça pour toutes les semaines à venir.

Merci d'avance,

Cordialement,
Re..
Peux-tu mettre en ligne le classeur utilisé ?
 

Discussions similaires

Réponses
50
Affichages
4 K

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 846
dernier inscrit
Silhabib