Sélection d'un autre classeur avec nom variable
Bonjour,
Depuis tout à l'heure, je cherche une solution à mon problème.
J'ai un classeur nommé " Automate_production "
et un autre classeur nommé "Bilan_jj-_mm_aaaa".
Chaque jours, un script exécute ce fichier avec sa macro pour faire le bilan de la journée.
De ce fait, dans un dossier, on retrouve chaque mois, tous les fichiers de chaque jours.
A côté, je suis en train de faire un automate pour réunir toutes les données plus rapidement sur une seule feuille.
Sur ma première feuille, j'ai donc une case où je rentre la date, et en fonction de cette date elle modifie le nom du fichier.
Par exemple, aujourd'hui le nom du fichier serait "Bilan_13_12_2017".
Sur VBA j'ai déjà fait ça :
Sub Rapport_mensuel()
Sheets("AUTOMATE").Select
BILAN = Range("I11").Value
nom_classeur_ouvert = ActiveWorkbook.Name
traitement BILAN
Consommation
End Sub
Sub traitement(BILAN)
With Application
Set fich = .Workbooks.Open(BILAN & ".xlsm")
End With
End Sub
De ce fait, la macro ouvre le fichier correspondant à la date dans le fichier.
Sauf que je dois sans arrêt naviguer d'un classeur à l'autre pour copier les valeurs :
Du coup la première fois j'ai un code comme ça :
Sub Consommation()
UEM = Range("G10").Value
Sheets("UEM").Select
Range("N13").Select
Selection.Copy
Windows("Automate_production").Activate
Sheets("Bilan").Select
Range("C83").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.NumberFormat = "#,##0.0"
Maintenant, pour retourner sur l'autre classeur, j'en ai aucune idée.
Il y'a bien la commande Windows("Bilan_13_12_2017").Activate
Sauf que j'aimerai bien avoir quelque chose de la forme Windows("Bilan_jj_mm_aaaa") pour qu'en fonction du jours, il retrouve la bonne fenêtre.
Si quelqu'un aurait une idée ?
Ok j'ai trouvé
bilanj = Range("G10").Value G10 étant "Bilan_"& $C$3 & "_" & $C$4 & "_" & $C$5 & "" (C3 le jours, C4 le mois et C5 l'année)
Windows(bilanj).Activate