Copie de données d'un autre classeur

possy.elodie

XLDnaute Nouveau
Bonjour tout le forum

Je reviens vers vous pour solliciter votre aimable aide.
​Je sais que ma problématique a été traitée plusieurs fois, mais je n'ai pas pu la résoudre.
En faite, m​a problématique est la suivante :
J’ai 4 fichiers Excel nommées​ de cette façon : AXX, AYY, BXX, BYY, contenus chacun dans un classeur différent. ​
​D​ans chaque fichier la première feuille contient un tableau et j’ai un fichier d​e synthèse qui contient deux feuille la première appelée​ XX et la deuxième YY.
Je veux faire une macro qui me permet de récupér​er​ les tableaux de fichier AXX et BXX dans la feuille XX du fichier de synthèse et de mémé pour les tableaux de fichier AYY et BYY dans la feuille YY du fichier de synthèse.
Ma situation de départ est la suivante:
Au début, j'ouvre le fichier de synthèse et j'ouvre la feuille XX du fichier de synthèse (la macro sera introduite sur ce fichier):
Afin de récupérer les données du premier fichier AXX, je dois tout d'abord, savoir si le fichier est ouvert ou pas. J'ai deux cas alors:
1- si le fichier est ouvert, je pointe sur la feuille demandée, je récupère les données ​et je ferme le fichier.
2- si le fichier est fermé, j'ouvre le fichier, je pointe sur la feuille demandée, je récupère les données ​ ​et je ferme le fichier.​
Cette procédure sera faite de la même manière sur tous les fichiers.
Je vous remercie d'avance de votre aide.

 

Pièces jointes

  • exp.gif
    exp.gif
    54.5 KB · Affichages: 31

don_pets

XLDnaute Occasionnel
Re : Copie de données d'un autre classeur

'llo,

J'imagine bien bien volontiers que tu as fait preuve de patience et d'effort pour que ta demande soit claire et explicite. Mais je n'arrive pas à te suivre ^^!

Bon il est vrai que nous sommes en fin de semaine, mais tout de même je bloque dès le début :

J’ai 4 fichiers Excel nommées​ de cette façon : AXX, AYY, BXX, BYY, contenus chacun dans un classeur différent. ​


Pourrais-tu simplifier ?

(car en fin de semaine, je suis en mode fainéant fatigué, et pour t'aider j'ai besoin de simplicité)
 

youky(BJ)

XLDnaute Barbatruc
Re : Copie de données d'un autre classeur

Bonjour Elodie,
Don_pets a raison, un fichier ou les dimensions du tableau serait plus parlant, ne serait-ce que de savoir si c'est des .xls ou .xlsx ou encore .xlsm
Bon dans le fichier joint tu dois rectifier les noms de fichiers avec la bonne extention, également le chemin col B du fichier
La moindre petite erreur et ça plante alors Attention!
Explication aussi dans le fichier
Aperçu de la macro
Code:
Sub metsfichier()
Application.ScreenUpdating = False
For k = 10 To 13
On Error Resume Next 'on gère l'error
fichier = Feuil1.Cells(k, 1) 'nom du fichier
chemin = Feuil1.Cells(k, 2)
Workbooks(fichier).Activate 'si le fichier est fermé on va en error
If Err <> 0 Then 'le fichier est fermé on l'ouvre
Workbooks.Open chemin & "\" & fichier
Err.Clear 'efface l'error
End If
ActiveWindow.WindowState = xlMinimized
ThisWorkbook.Activate 'on active ce fichier
ActiveWindow.WindowState = xlMaximized
With Workbooks(fichier)
If k < 12 Then '10&11 c'est XX sinon YY
bas = Feuil2.[A65536].End(3).Row + 1 ' derniere ligne
Feuil2.Range("A" & bas & ":Z" & bas + 1999).Value = .Sheets(1).[A1:Z2000].Value 'copie A1:Z2000
Else
bas = Feuil3.[A65536].End(3).Row + 1
Feuil3.Range("A" & bas & ":Z" & bas + 1999).Value = .Sheets(1).[A1:Z2000].Value
End If
.Close False 'ferme le fichier
End With
next
Application.ScreenUpdating = True
End Sub
Je n'ai pas testé réellement, je pense ça doit être OK si tu indiques les bons chemins et fichiers
Bruno
 

Pièces jointes

  • ESSAI.xls
    34.5 KB · Affichages: 28
  • ESSAI.xls
    34.5 KB · Affichages: 25
  • ESSAI.xls
    34.5 KB · Affichages: 29
Dernière édition:

possy.elodie

XLDnaute Nouveau
Re : Copie de données d'un autre classeur

Bonsoir don_pets et Bruno,
Je vous remercie pour vos efforts! Je suis reconnaissante.
@don_pets: Étant débutante en Excel et VBA, en faite, je n'arrive pas à différencier entre fichier excel et classeur. J'ai pensé que c'est la même chose. Mes fichiers ont une extension .xlsm. Je te remercie énormément d'avoir pris le temps pour me répondre.
@Bruno: Merci également d'avoir consacrer du temps pour développer une réponse très détaillée. Merci beaucoup.
Je vous souhaite un très bon WE.
ELo
 

Discussions similaires

Réponses
24
Affichages
1 K