Macro récap et multi-onglets

Kernoz

XLDnaute Occasionnel
Bonjour à tous,

Je vais essayer d'être le plus clair possible :D

J'ai un fichier de données mensuelles.
Sur ce fichier un onglet par jour ( le même avec des données differentes) type" 241111"

Je voudrais extraire sur un fichier à part les données de chaques onglets avec une seule macro.
J'arrive evidement à faire une macro par jour mais je voudrais n'avoir à activer qu'une seule macro qui prenne les onglets un par un et colle mes données les une sous les autres sur mon autre fichier récap.

D'avance merci ! :p
 
Dernière édition:

Balot57

XLDnaute Nouveau
Re : Macro récap et multi-onglets

Bonjour,
Je n'ai pas pu ouvrir ton fichier n'ayant pas la bonne version d'Excel, mais la solution serait celle-là : il te faut un compteur de feuille et un compteur de ligne pour savoir où coller les données.
CompteurFeuille=1
CompteurLignePourColler=2
do while CompteurFeuille<=sheets.count
sheets(CompteurFeuille).select
ton traitement
chercher le nombre de lignes à coller

workbooks(celui où tu veux coller les données).activate
sheets(où tu veux coller les données).select
coller à la ligne CompteurLignePourColler
CompteurLignePourColler=CompteurLignePourColler+nombre de lignes collées

workbooks(celui contenant plusieurs feuilles).activate
CompteurFeuille=CompteurFeuille+1
loop
 

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

Bonjour et merci pour ta réponse.

Helas je ne comprends pas assez bien le VBA pour appliquer ton code correctement :(

Je glisse en pièce jointe la version xls de mon fichier ;) si tu as deux minutes :rolleyes:
 

Pièces jointes

  • Exemple.xls
    26 KB · Affichages: 55
  • Exemple.xls
    26 KB · Affichages: 60
  • Exemple.xls
    26 KB · Affichages: 54

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

J'ai reussi à faire la macro pour copier mes données à la suite sur mon onglet Recap.

Sub copie()
'
' copie Macro
'

'

Range("A7:E14").Select
Selection.Copy
Sheets("Recap").Select
Cells(65535, 1).End(xlUp)(2).Select
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub

Maintenant je cherche à faire en sorte que cette macro s'active sur la feuille 1, puis sur la feuille 2, la 3 etc ...

Si quelqu'un a une idée. :D
 

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

Petites précisions suite à l'avancée de mes recherches :

* Il y a dans mon classeurs plusieurs feuilles qui ne doivent pas être prises en compte par la macro.

* Les données que je veux copier et coller à la suite dans mon onglet Recap sont une partie bien précise d'un tableau.

Je joint à ce post un fichier mis à jour plus en adequation avec ma demande :

Je souhaite copier sur mon onglet Recap à la suite une partie des tableaux (onglets rouges) sans que les onglets BDD et Total ne soient concernés par cette macro.

MERCI D'AVANCE .

:D
 

Pièces jointes

  • Exemple.xlsm
    26 KB · Affichages: 64
  • Exemple.xls
    62.5 KB · Affichages: 54
  • Exemple.xlsm
    26 KB · Affichages: 68
  • Exemple.xls
    62.5 KB · Affichages: 55
  • Exemple.xlsm
    26 KB · Affichages: 61
  • Exemple.xls
    62.5 KB · Affichages: 50

Balot57

XLDnaute Nouveau
Re : Macro récap et multi-onglets

Je n'ai pas pu répondre plus tôt car il faut bien gagner sa vie...
En tout cas, voilà ci-joint une macro qui devrait marcher. J'ai appris les macros sur le tas, donc le code défriserait peut-être un informaticien, mais ça marche ! (sous Excel 2003 en tout cas).
 

Pièces jointes

  • Exemple_v2.xls
    60 KB · Affichages: 85
  • Exemple_v2.xls
    60 KB · Affichages: 90
  • Exemple_v2.xls
    60 KB · Affichages: 91

Balot57

XLDnaute Nouveau
Re : Macro récap et multi-onglets

J'ai moi-même débuté en lisant et adaptant les macros des autres. Et parfois, j'aurais adoré qu'il y ait des commentaires. Alors j'essaie de ne pas tomber dans les mêmes travers. D'ailleurs, si je peux me permettre un autre conseil, écris plein de commentaires dans ton code, ça t'aidera le jour où tu voudras faire des modifs mais où tu auras tout oublié du pourquoi du comment !
Tiens nous au courant pour ta macro, ça me fera plaisir de savoir que tu es arrivé au bout !
 

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

Bonjour Balot57, bonjour à tous.

J'ai essayé d'adapter le code à mon tableau mais helas ca ne marche pas, j'arrive à comprendre à peu pret le code, à adapter certaines choses mais certaines choses coincent :

* Les données que je veux copier dans l'onglet Recap sont situées sur chaque feuille dans le Range A271 : AV351.

* Dans ce Range certaines colonnes sont masquées.

* Certaines cellule sont fusionnées, ce qui pose probleme lors de la copie.

* Les cellules copiées contiennent des formules, je cherche donc à ne copier que les valeurs.

Je joint un fichier exemple mis à jour, encore un peu plus précis. :p
 

Pièces jointes

  • Exemple.xls
    63.5 KB · Affichages: 63
  • Exemple.xls
    63.5 KB · Affichages: 73
  • Exemple.xls
    63.5 KB · Affichages: 97

kiki29

XLDnaute Barbatruc
Re : Macro récap et multi-onglets

Salut, à adapter à ton contexte
Code:
Option Explicit

Sub ConcatenationFeuilles()
Dim i As Long
Dim T() As Variant
    Application.ScreenUpdating = False
    ShConcat.Cells.Clear
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> ShConcat.Name And IsNumeric(Sheets(i).Name) Then
            With Sheets(i)
                T = .Range("A7:F14").Value
                ShConcat.Range("A" & Rows.Count).End(xlUp).Offset(1).Resize(UBound(T, 1), UBound(T, 2)) = T
            End With
        End If
    Next i
    Erase T
    Application.ScreenUpdating = True
End Sub
ShConcat est le CodeName de la feuille Recap
Voir VBA Les bases [Résolu] - Forum des professionnels en informatique

Pour le reste ce n'est plus que de l'habillage
 
Dernière édition:

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

Bonjour et merci pour le code.

Celui ci fonctionne :)

Juste une petite précision, je voudrais qu'au lieu d'effacer l'ensemble de la feuille "Recap" , le code n'efface qu'a partir de la ligne 6 ( je voudrais mettre des titres de colonnes et des boutons de macro au dessus de mes données.

D'avance merci

EDIT : J'ai trouvé :)
 
Dernière édition:

Kernoz

XLDnaute Occasionnel
Re : Macro récap et multi-onglets

Bonjour,

J'ai voulu adapter le code pour ce même fichier sur d'autres données.

Le problème, lorsque je lance la macro, rien ne se copie.

Peut-être à cause du CodeName de ma feuille destinataire ?

Voici le code :

Sub Divers()
'
' Divers Macro
'

'
Dim i As Long
Dim T() As Variant
Application.ScreenUpdating = False
Consolid.Range("A430:AZ6666").Clear
For i = 1 To Sheets.Count
If Sheets(i).Name <> Consolid.Name And IsNumeric(Sheets(i).Name) Then
With Sheets(i)
T = .Range("A247:AE269").Value
ShConcat.Range("A" & Rows.Count).End(xlUp).Offset(1).Resize(UBound(T, 1), UBound(T, 2)) = T
End With
End If
Next i
Erase T
Application.ScreenUpdating = True
End Sub

Merci d'avance.
 

Discussions similaires

Statistiques des forums

Discussions
312 453
Messages
2 088 551
Membres
103 881
dernier inscrit
malbousquet