Recopier des plages de données / VBA

Rachel_01

XLDnaute Nouveau
Bonjour,

Dans le cadre de mon stage je dois mettre en place une macro qui permettrait de recopier dans un fichier de suivi 2 plages de données, situées dans plusieurs onglets et dans plusieurs fichiers (que je peux classer dans un même répertoire).

Tous ces fichiers et ces onglets ont le même aspect, cependant la taille des plages de donnée à recopier varie dans chaque onglet et le nombre d'onglet par fichier varie également... (dans un même onglet la taille des deux plages de données est indentique). Les noms de chaque onglet sont des codes à deux lettres et trois chiffres mais ne suivent aucun ordre logique.

Il faudrait également récupérer le titre de chaque onglet ainsi que la date (ces deux données sont inscrites dans deux cellules dans chaque onglet) et les inscrire dans le fichier de suivi en face de chaque ligne des deux plages de données recopier danc cet onglet.

Comme je suis une débutante en VBA j'aurais bien besoin d'un petit coup de pouce... Et n'hésitez pas à me demander plus de précision.

Merci de votre aide.
 

idiomea

XLDnaute Junior
Re : Recopier des plages de données / VBA

slt, c'est exactement le même probleme que moi
j'ai reussit à trouver une macro pour copier 1 colone de tous les onglets présent dans le classeur ouvert (j'ai mis L, mais ça peux changer)

et j'attand que quelqu'un m'aide pour transposer ça à tous un dossier avec plusieurs fichier

regarde ce fil :

https://www.excel-downloads.com/thr...es-donnees-les-unes-a-cote-des-autres.122286/

Guillaume
 

Rachel_01

XLDnaute Nouveau
Re : Recopier des plages de données / VBA

j'ai commencé une macro mais ça ne marche pas, il m'indique une erreur "Objet requis"..

Sub rapatriement()
Dim Fich As String, Ligne As Long
Dim sh As Worksheet
Const Chemin = "F:\Résultat\Essai\"
Ligne = 4
Fich = Dir(Chemin & "\*.xl*")
Do While Fich <> ""
Workbooks.Open Filename:=Chemin & Fich
sh = Openworkbooks.sheet
Range("B12:B30").Copy
Ligne = Ligne + 18
Workbooks(Fich).Close False
Fich = Dir
Loop
End Sub

Est ce que qqn peut m'aider à ce sujet?
 

Rachel_01

XLDnaute Nouveau
Re : Recopier des plages de données / VBA

merci bcp,

J'ai précisé ma procédure et désormais il m'indique "Variable objet ou variable de bloc With non définie"...

Sub rapatriement()
Dim Fich As String, Ligne As Long
Dim sh As Worksheet
Dim Sheet As Worksheet
Sheet.Name = Résultat
Const Chemin = "F:\Résultat\Essai\"
Fich = Dir(Chemin & "*.xl*")
Do While Fich <> ""
Workbooks.Open Filename:=Chemin & Fich
Set sh = ActiveWorkbook.ActiveSheet
Dercol = Résultat.UsedRange.SpecialCells(xcelltypelastcell).Row
sh.Range("B12:B30").Copy Sheets("Résultat").Cell(Dercol, 1)
Workbooks(Fich).Close False
Fich = Dir
Loop
End Sub

Je m'excuse pour toutes les incohérance mais je suis encore débutante. Merci de votre aide.
 

skoobi

XLDnaute Barbatruc
Re : Recopier des plages de données / VBA

Re bonjour,

sûrement d'ici (merci de préciser la ligne où se produit l'erreur à l'avenir):
Code:
sh.Range("B12:B30").Copy Sheets("Résultat").Cell[SIZE=4][B][COLOR=Blue]s[/COLOR][/B][/SIZE](Dercol, 1)

En bleu ce qu'il manque.
 

Discussions similaires

Réponses
45
Affichages
1 K

Statistiques des forums

Discussions
312 198
Messages
2 086 142
Membres
103 129
dernier inscrit
Atruc81500