VBA - Copie d'un onglet à nom variable

Deluxe35

XLDnaute Nouveau
Bonjour,

Etant donné l'efficacité que vous avez eu face à ma précédente question, je souhaitais à nouveau vous demander de l'aide.
Je souhaite copier un onglet à nom variable d'un fichier Excel vers le fichier Excel final.
Mon code actuel fonctionne avec un nom d'onglet fixe. Cependant, nous avons remarqué que l'onglet commencera toujours par report (report_1, report-1, report_2 .... )
J'avais pensé à Worksheets("report*"), mais cela ne marche pas.

Voici mon code :

VB:
Sub recup_donnes()

Workbooks.Open Filename:="C:\Users\Adrien\OneDrive Entreprise 1\Travail\T9.xls" 'Ouvre le fichier Excel source

Workbooks("T9.xls").Worksheets("report*").Cells.Copy _
Workbooks("ComparatifEmission.xlsm").Worksheets("T9").Range("A1") 'Copie-colle le fichier

Workbooks("T9.xls").Close False 'Referme le fichier source

End Sub

Merci à vous,

Adrien
 

Theze

XLDnaute Occasionnel
Bonjour,

Adaptes à tes besoins :
Code:
Sub recup_donnes()
   
    Dim I As Integer
   
    Workbooks.Open Filename:="C:\Users\Adrien\OneDrive Entreprise 1\Travail\T9.xls" 'Ouvre le fichier Excel source
   
    'Par exemple, la feuille s'appelle report_3
    I = 3
    Workbooks("T9.xls").Worksheets("report_" & I).Cells.Copy _
    Workbooks("ComparatifEmission.xlsm").Worksheets("T9").Range("A1") 'Copie-colle le fichier
   
    Workbooks("T9.xls").Close False 'Referme le fichier source

End Sub
 

Deluxe35

XLDnaute Nouveau
Bonjour,

Etant donné l'efficacité que vous avez eu face à ma précédente question, je souhaitais à nouveau vous demander de l'aide.
Je souhaite copier un onglet à nom variable d'un fichier Excel vers le fichier Excel final.
Mon code actuel fonctionne avec un nom d'onglet fixe. Cependant, nous avons remarqué que l'onglet commencera toujours par report (report_1, report-1, report_2 .... )
J'avais pensé à Worksheets("report*"), mais cela ne marche pas.

Voici mon code :

VB:
Sub recup_donnes()

Workbooks.Open Filename:="C:\Users\Adrien\OneDrive Entreprise 1\Travail\T9.xls" 'Ouvre le fichier Excel source

Workbooks("T9.xls").Worksheets("report*").Cells.Copy _
Workbooks("ComparatifEmission.xlsm").Worksheets("T9").Range("A1") 'Copie-colle le fichier

Workbooks("T9.xls").Close False 'Referme le fichier source

End Sub



Merci à vous,

Adrien
 

pierrejean

XLDnaute Barbatruc
Bonjour Adrien

A tester
Code:
Sub recup_donnes()

Workbooks.Open Filename:="C:\Users\Adrien\OneDrive Entreprise 1\Travail\T9.xls" 'Ouvre le fichier Excel source
For Each sh In Workbooks("T9.xls").Worksheets
If InStr(sh.Name, "report") <> 0 Then
Workbooks("T9.xls").sh.Cells.Copy _
  Workbooks("ComparatifEmission.xlsm").Worksheets("T9").Range("A1") 'Copie-colle le fichier
End If
Next
Workbooks("T9.xls").Close False 'Referme le fichier source

End Sub
 

Discussions similaires

Réponses
7
Affichages
433

Statistiques des forums

Discussions
312 210
Messages
2 086 279
Membres
103 170
dernier inscrit
HASSEN@45