Comment activer une application Excel qui change de nom [Résolu] - VB/VBA/VBS - Programmation
Marsh Posté le 10-04-2006 à 23:53:39
Quand tu parles d'application, tu parles de Classeur, c'est ça ?
Je vois pas trop ce qui te préoccupes : tu peux pas simplement utiliser la variable Fichier, qui, si j'ai bien compris, correspond au nom du classeur ?
Marsh Posté le 11-04-2006 à 21:06:17
Salut,
Oui, c'est bien un classeur.
Le code serait du style :
Application.worksheets(.....).activate
Le problème est que je ne sais pas trop quoi placer entre les parenthèses.
Merci de ton aide.
Marsh Posté le 12-04-2006 à 19:11:01
Tu as le choix entre le nom du classeur, entre guillemet :
Workbooks("Classeur2.xls" ).Activate |
ou bien l'index de celui-ci. C'est à dire que si c'est le deuxième classeur ouvert, alors c'est l'index 2 (etc.) :
Workbooks(2).Activate |
Marsh Posté le 12-04-2006 à 19:24:48
Oui d'accord, mais le nom du classeur change souvent.
Commen précisé ci-dessus, cela peut être 5001 aujourd'hui et 5002 demain, 5003 après-demain, etc...
Donc il ne peut pas avoir une nom fixe.
Marsh Posté le 12-04-2006 à 19:33:21
OK Juju2K,
Je comprends le principe de l'index 2.
Pour mon cas, il est en 1 donc je mets workbooks(1).activate.
Mais si un jour, j'ai un autre classeur ouvert en position 1, qui n'a évidemment rien à voir, c'est celui-ci qui sera activé !!!
Et là, ça ne marche pô.
Marsh Posté le 12-04-2006 à 20:02:11
Ca y est, ça marche, j'ai tout simplement fait
workbooks(fichier).Activate
Merci Juju2K pour ton aide.
P.S : Je n'ai pas trouvé quelle case cocher pour préciser que ma demande est résolue !
A+
Marsh Posté le 12-04-2006 à 20:15:47
Je t'en pris
En fait, ce n'est pas une case à cocher :
Il faut éditer ton premier message pour pouvoir changer le titre du topic (bouton ). De cette manière, tu rajoutes un "[Résolu]" en fin ou début de titre.
Marsh Posté le 10-04-2006 à 23:27:44
Bonsoir à tous,
Voilà mon problème :
J'ai 2 applications Excel ouvertes en même temps.
Dont une qui change de nom fréquemment.
Voici le code VBA qui me permet de la nommer :
-------------------------------------------------------------------------------------------------
Dim Repertoire As String 'Procédure d'enregistrement sous le numéro de la valeur de la cellule (2,18)
Dim Fichier As String
Dim Extension As String
Repertoire = "E:\hbb\Dossiers\Travail\"
Extension = ".xls"
Fichier = Cells(2, 18).Value
ActiveWorkbook.SaveAs Filename:= _
Repertoire & Fichier & Extension _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
-------------------------------------------------------------------------------------------------
J'ai souhaiterais selectionner l'application ci-dessus qui change de nom régulièrement quand l'autre application est active.
Aujourd'hui, elle peut être nommée, par exemple, "5001" et demain "5002".
Si elle portait tout le temps le nom "5001", je pourrais faire un code simple du style
Windows("5001.xls" ).Activate
Mais ce n'est évidemment pas possible !!!!
Quelqu'un aurait-il une idée ?
Merci d'avance,
hbb
Message édité par hbb le 12-04-2006 à 23:38:27