Bonjour,
je travaille avec une macro pour importer une plage d'un classeur vers un autre, quand ils sont sur le meme disque, or il se trouve que la plage de données dont j'ai besoin maintenant se trouve sur un ou plusieurs cd-rom, donc il faudrait que j'arrive à intégrer dans ma macro un code pour lui dire d'aller chercher ma plage dans le .xls du cd-rom, et l'importer à la suite vers mon classeur et la feuille que j'utilise pour travailler, sachant que concernant les cd, ils ont des noms différents, et que le nom de la feuille dans laquelle se trouve ma plage est variable (mais aura toujours les 3 meme caractères qui sont "c" "r" "a"), je dois répéter cette opérations faire pour chaques fichiers .xls dans les cd-rom, normalement ils se trouveront toujours à la racine dans le cd.
Merci de bien vouloir m'aider.

Re

Je post mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
Sub Tst()
 
Dim S As Worksheet
Dim Fichier, Repertoire As String
Dim Destination, MaPlage As Range
 
Repertoire = "E:\"
Fichier = Dir(Repertoire & "*MISSION*.xls")
If Len(Fichier) > 0 Then
Workbooks.Open Filename:=Repertoire & Fichier
End If
For Each S In Worksheets
If S.Name Like "*CR*" Then
S.Activate
Rows("1:2").Delete Shift:=xlUp
Columns("A:K").AutoFilter
Set Destination = Workbooks("macro immat.xls").Sheets("Extraction").Range("A1")
Set MaPlage = ActiveSheet.AutoFilter.Range
Set tbl = ActiveCell.CurrentRegion
tbl.Offset(1, 1).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).Select
MaPlage.Copy Destination
End If
Next Ws
End Sub
J'ai partiellement réglé mon problème, cependant il faudrait que ma macro après la copie puisse fermer sans enregistrer le classeur se trouvant sur le cd, éjecter le cd et inviter à mettre le suivant et ainsi de suite en copiant chaque plages à la suite les unes des autres.

Vous me comprenez?

Merci.