vba : stockage variable winows.activate.

europe2508

XLDnaute Junior
Bonjour, dans une démarche d'amélioration de mon code, je voudrais que
ce qu'il y dans le windows c'est à dire le fichier courant soit récupérer à partir d'une varialbe :

Windows("toto.xls").Activate

Faire
Windows(B5).Activate
ou B5 coitent le nom du fichier "toto"
j'ai essayer de recuprer avec un range mais rien y faire

a = Range("B5")
Windows(a).Activate

Sa doit être un truc pas compliqué mais la je coince
merci
 

Pierrot93

XLDnaute Barbatruc
Re : vba : stockage variable winows.activate.

Bonjour Europe

essaye peut être comme ceci :

Code:
Workbooks(Range("B5").Value).Activate

A noter qu'il faut que l'extension .xls soit présente dans B5 le cas échéant.

bonne soirée
@+
 

job75

XLDnaute Barbatruc
Re : vba : stockage variable winows.activate.

Bonjour,
Si la cellule B5 en question n'est pas dans la feuille active, il faut préciser la feuille, soit par son numéro, soit par son nom, avec par exemple :
Sheets(1).Range("B5")
Sheets("xxx").Range("B5")
A+
 

Pierrot93

XLDnaute Barbatruc
Re : vba : stockage variable winows.activate.

Re

alors le 1er code donné devrait fonctionner, le classeur doit être préalablement ouvert bien sur... et la cellule B5 sur la feuille active, sinon il faut préciser les différents objets, comme ceci :

Code:
Workbooks(Workbooks("nomclasseurb5.xls").Sheets("nomfeuilleb5").Range("B5").Value).Activate

@+
 

europe2508

XLDnaute Junior
Re : vba : stockage variable winows.activate.

Personne n'a été confronté à ce problème si l'on renomme le fichier, qu'on puisse le rende dynamique, que l'on stock le nom récupérer du fichier a partir d'une cellule dans une variable :

windows(variable).activate
 

Pierrot93

XLDnaute Barbatruc
Re : vba : stockage variable winows.activate.

Bonjour Europe,

si l'on reprend depuis le début, ta demande initiale :

ce qu'il y dans le windows c'est à dire le fichier courant soit récupérer à partir d'une varialbe

on peut également procéder ainsi :

Code:
Dim wb As Workbook
Set wb = ActiveWorkbook
'ton code
wb.Activate

une fois la variable objet initialisée, pour faire référence au classeur en question, tu utilises la variable "wb" auquelle tu peux appliquer les mêmes instructions qu'un classeur.

Sinon mets peut être le code utilisé, pour voir plus précisément où se trouve ton problème.

bonne journée
@+
 

Discussions similaires

  • Question
Microsoft 365 Formules
Réponses
2
Affichages
476

Statistiques des forums

Discussions
312 761
Messages
2 091 798
Membres
105 074
dernier inscrit
JPATOUNE