Attribuer une variable à un fichier

  • Initiateur de la discussion Initiateur de la discussion nufida
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

nufida

Guest
Salut à tous,

j'ai une question toute simple de langage de programmation, si simple que je n'ai pas réussi à la trouver dans les archives!

Je souhaitrais attribuer une variable à un fichier ouvert, pour pouvoir demander à la macro de l'activer par la suite sans connaitre son nom. Actuellement, mon programme est le suivant:
Windows('CAR 03-2006 PROVISOIRE Nico.xls').Activate

Hors le nom de fichier change tous les trimestres.

Merci de votre aide
Bonne journée
 
Bonjour à Tous,

Voila le code qui va bien

Code:
Sub Creepy()

Dim WsC As Workbook

Set WsC = Workbooks.Open('c:\\CAR 03-2006 PROVISOIRE Nico.xls', ReadOnly:=True, Notify:=False)

' A toi de mettre les bonnes options reandonly et notify
WsC.Activate
'Code
'------
'A la fin du code liberer la mémoire
Set WsC = Nothing
End Sub

@+

Creepy
 
Bonjour

si tu veux changer le nom rapidement

tu le places en A1 de la feuille 1 et tu le récupères dans ta macro

Windows(range('A1').value &'.xls').Activate

seulement si ta fenêtre n'existe pas (fichier non ouvert) il y aura un erreur à gérer

le mieux serait de vérifier l'ouverture et si non ouvert d'ouvrir le fichier (méthode creepy)

trouve=0
for i = 1 to windows.count
if windows(i).name (ou .caption je ne sais plus de tête)= range('A1').value &'.xls' then
....activate
trouve=1
next
if trouve=0 then ...ouvrir fichier

A+
 
Merci pour vos réponses.

Mais en fait, il s'agit du fichierd'où je lance la macro donc il est ouvert. La macro 'active' un autre fichier pour faire un copier. Et c'est à ce moment que j'ai besoin de réactiver le fichier 'CAR 03-2006 Provisoire Nico.xls' pour y faire le coller.

N'y a t'il pas moyen de le réactiver sans donner son nom dans le code (car celui change souvent)?

Excusez-moi je n'avais peut-être pas été assez clair dans ma description. Merci pour votre aide
 
re

tu fais

nomfichier=activewindow.caption

en début de macro, cela sauve dans une variable le nom du fichier

et ensuite

windows(nomfichier).activate

te le ramène

(il y a peut-être aussi des choses comme previouswindow..)

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour