[Semi HS] - Modifier l'aspect des menus pour une seule application
Le
Michel Gaboly
--47EF39F17758A06620D8AEC7
Content-Type: text/plain; charset=iso-8859-1; x-mac-type="54455854"; x-mac-creator="4D4F5353"
Content-Transfer-Encoding: 8bit
Bonjour,
Pour la première fois, j'ai posé une question hier sur microsoft.public.fr.scripting,
mais je n'ai eu aucune réponse pour le moment.
Si une bonne âme ici avait la réponse, ;-))
Un client pour lequel j'ai développé une appli Excel/VBA,
me demande un truc que je ne sais pas faire ;-((
Il voudrait que l'utilisateur final ne se rende pas compte
qu'il est dans Excel. Une des options qui lui conviendraient
serait d'avoir des menus spécifiques (je sais faire) avec une
police, une taille et/ou une couleur particulière(s).
Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
sage de Patrick Penet qui montre comment ouvrir une instance
d'Excel "insensible à un double clic dans l'explorateur sur
d'autres documents Excel" :
Dim oXL
Set oXL = WScript.CreateObject("EXCEL.application")
' oXL.Visible = False
oXL.workbooks.open "c:\Mes Documents\MotsCroisés.xls"
oXL.application.IgnoreRemoteRequests = False
Set oXL = Nothing
En double-cliquant sur le raccourci, l'applic va s'ouvrir dans
une première instance d'Excel qui restera "insensible" aux éventuelles
ouvertures d'autres fichiers Excel (par double clic dans l'explorateur)
qui s'ouvriront alors dans une autre instance d'Excel donc pas
d'interférence possible.
Est-il concevable avec un script VBS de lancer cette succes-
sion d'opérations :
Modifier l'aspect des menus via le panneau de config, ouvrir
le document Excel contenant les macros, et à la fermeture
d'Excel, rétablir les paramètres initiaux pour l'aspect
des menus. ?
Pour le rétablissement des paramètres initiaux, l'appel d'un
script VBS depuis Excel VBA (événement BeforeClose du clas-
seur) me conviendrait parfaitement.
Merci d'avance.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
--47EF39F17758A06620D8AEC7
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
Bonjour,
<p>Pour la première fois, j'ai posé une question hier sur
microsoft.public.fr.scripting,
<br>mais je n'ai eu aucune réponse pour le moment.
<p>Si une bonne âme ici avait la réponse, ;-))
<br>
<blockquote>Un client pour lequel j'ai développé une appli
Excel/VBA,
<br>me demande un truc que je ne sais pas faire ;-((
<p>Il voudrait que l'utilisateur final ne se rende pas compte
<br>qu'il est dans Excel. Une des options qui lui conviendraient
<br>serait d'avoir des menus spécifiques (je sais faire) avec une
<br>police, une taille et/ou une couleur particulière(s).
<p>Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
<br>sage de Patrick Penet qui montre comment ouvrir une instance
<br>d'Excel "insensible à un double clic dans l'explorateur sur
<br>d'autres documents Excel" :
<p> Dim oXL
<br> Set oXL = WScript.CreateObject("EXCEL.application")
<br> ' oXL.Visible = False
<br> oXL.workbooks.open "c:\Mes Documents\MotsCroisés.xls"
<br> oXL.application.IgnoreRemoteRequests = False
<br> Set oXL = Nothing
<p> En double-cliquant sur le raccourci, l'applic va
s'ouvrir dans
<br> une première instance d'Excel qui restera
"insensible" aux éventuelles
<br> ouvertures d'autres fichiers Excel (par double clic
dans l'explorateur)
<br> qui s'ouvriront alors dans une autre instance d'Excel
donc pas
<br> d'interférence possible.
<br>
<p>Est-il concevable avec un script VBS de lancer cette succes-
<br>sion d'opérations :
<p>Modifier l'aspect des menus via le panneau de config, ouvrir
<br>le document Excel contenant les macros, et à la fermeture
<br>d'Excel, rétablir les paramètres initiaux pour l'aspect
<br>des menus. ?
<p>Pour le rétablissement des paramètres initiaux, l'appel
d'un
<br>script VBS depuis Excel VBA (événement BeforeClose du
clas-
<br>seur) me conviendrait parfaitement.</blockquote>
<p><br>Merci d'avance.
<p>--
<br>Cordialement,
<p>Michel Gaboly
<br><A HREF="http://www.gaboly.com">http://www.gaboly.com</A>
<br> </html>
--47EF39F17758A06620D8AEC7--
Content-Type: text/plain; charset=iso-8859-1; x-mac-type="54455854"; x-mac-creator="4D4F5353"
Content-Transfer-Encoding: 8bit
Bonjour,
Pour la première fois, j'ai posé une question hier sur microsoft.public.fr.scripting,
mais je n'ai eu aucune réponse pour le moment.
Si une bonne âme ici avait la réponse, ;-))
Un client pour lequel j'ai développé une appli Excel/VBA,
me demande un truc que je ne sais pas faire ;-((
Il voudrait que l'utilisateur final ne se rende pas compte
qu'il est dans Excel. Une des options qui lui conviendraient
serait d'avoir des menus spécifiques (je sais faire) avec une
police, une taille et/ou une couleur particulière(s).
Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
sage de Patrick Penet qui montre comment ouvrir une instance
d'Excel "insensible à un double clic dans l'explorateur sur
d'autres documents Excel" :
Dim oXL
Set oXL = WScript.CreateObject("EXCEL.application")
' oXL.Visible = False
oXL.workbooks.open "c:\Mes Documents\MotsCroisés.xls"
oXL.application.IgnoreRemoteRequests = False
Set oXL = Nothing
En double-cliquant sur le raccourci, l'applic va s'ouvrir dans
une première instance d'Excel qui restera "insensible" aux éventuelles
ouvertures d'autres fichiers Excel (par double clic dans l'explorateur)
qui s'ouvriront alors dans une autre instance d'Excel donc pas
d'interférence possible.
Est-il concevable avec un script VBS de lancer cette succes-
sion d'opérations :
Modifier l'aspect des menus via le panneau de config, ouvrir
le document Excel contenant les macros, et à la fermeture
d'Excel, rétablir les paramètres initiaux pour l'aspect
des menus. ?
Pour le rétablissement des paramètres initiaux, l'appel d'un
script VBS depuis Excel VBA (événement BeforeClose du clas-
seur) me conviendrait parfaitement.
Merci d'avance.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
--47EF39F17758A06620D8AEC7
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
Bonjour,
<p>Pour la première fois, j'ai posé une question hier sur
microsoft.public.fr.scripting,
<br>mais je n'ai eu aucune réponse pour le moment.
<p>Si une bonne âme ici avait la réponse, ;-))
<br>
<blockquote>Un client pour lequel j'ai développé une appli
Excel/VBA,
<br>me demande un truc que je ne sais pas faire ;-((
<p>Il voudrait que l'utilisateur final ne se rende pas compte
<br>qu'il est dans Excel. Une des options qui lui conviendraient
<br>serait d'avoir des menus spécifiques (je sais faire) avec une
<br>police, une taille et/ou une couleur particulière(s).
<p>Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
<br>sage de Patrick Penet qui montre comment ouvrir une instance
<br>d'Excel "insensible à un double clic dans l'explorateur sur
<br>d'autres documents Excel" :
<p> Dim oXL
<br> Set oXL = WScript.CreateObject("EXCEL.application")
<br> ' oXL.Visible = False
<br> oXL.workbooks.open "c:\Mes Documents\MotsCroisés.xls"
<br> oXL.application.IgnoreRemoteRequests = False
<br> Set oXL = Nothing
<p> En double-cliquant sur le raccourci, l'applic va
s'ouvrir dans
<br> une première instance d'Excel qui restera
"insensible" aux éventuelles
<br> ouvertures d'autres fichiers Excel (par double clic
dans l'explorateur)
<br> qui s'ouvriront alors dans une autre instance d'Excel
donc pas
<br> d'interférence possible.
<br>
<p>Est-il concevable avec un script VBS de lancer cette succes-
<br>sion d'opérations :
<p>Modifier l'aspect des menus via le panneau de config, ouvrir
<br>le document Excel contenant les macros, et à la fermeture
<br>d'Excel, rétablir les paramètres initiaux pour l'aspect
<br>des menus. ?
<p>Pour le rétablissement des paramètres initiaux, l'appel
d'un
<br>script VBS depuis Excel VBA (événement BeforeClose du
clas-
<br>seur) me conviendrait parfaitement.</blockquote>
<p><br>Merci d'avance.
<p>--
<br>Cordialement,
<p>Michel Gaboly
<br><A HREF="http://www.gaboly.com">http://www.gaboly.com</A>
<br> </html>
--47EF39F17758A06620D8AEC7--

Poser une question


les paramètres que tu veux modifier correspondent à une clé de la base de
registres
si c'est le cas, tu peux la modifier par vbs puis la restaurer par ton vba
(attention, en cas de plantage d'excel, tu risque de ne pas restaurer tes
paramètres !)
"Michel Gaboly"
Bonjour,
Pour la première fois, j'ai posé une question hier sur
microsoft.public.fr.scripting,
mais je n'ai eu aucune réponse pour le moment.
Si une bonne âme ici avait la réponse, ... ;-))
Un client pour lequel j'ai développé une appli Excel/VBA,
me demande un truc que je ne sais pas faire ;-((
Il voudrait que l'utilisateur final ne se rende pas compte
qu'il est dans Excel. Une des options qui lui conviendraient
serait d'avoir des menus spécifiques (je sais faire) avec une
police, une taille et/ou une couleur particulière(s).
Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
sage de Patrick Penet qui montre comment ouvrir une instance
d'Excel "insensible à un double clic dans l'explorateur sur
d'autres documents Excel" :
Dim oXL
Set oXL = WScript.CreateObject("EXCEL.application")
' oXL.Visible = False
oXL.workbooks.open "c:Mes DocumentsMotsCroisés.xls"
oXL.application.IgnoreRemoteRequests = False
Set oXL = Nothing
En double-cliquant sur le raccourci, l'applic va s'ouvrir dans
une première instance d'Excel qui restera "insensible" aux éventuelles
ouvertures d'autres fichiers Excel (par double clic dans l'explorateur)
qui s'ouvriront alors dans une autre instance d'Excel... donc pas
d'interférence possible.
Est-il concevable avec un script VBS de lancer cette succes-
sion d'opérations :
Modifier l'aspect des menus via le panneau de config, ouvrir
le document Excel contenant les macros, et à la fermeture
d'Excel, rétablir les paramètres initiaux pour l'aspect
des menus. ?
Pour le rétablissement des paramètres initiaux, l'appel d'un
script VBS depuis Excel VBA (événement BeforeClose du clas-
seur) me conviendrait parfaitement.
Merci d'avance.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Aucune majuscule ... ca a marché ?
@+
FxM
wrote:
Mais il me reste du chemin à faire, car la base de registres, tout ce
que je peux en dire, c'est que j'en ai vaguement entendu causer, mais
malheureusement cela ne va pas + loin ;-(((
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
Content-Type: text/plain; charset=iso-8859-1; x-mac-type="54455854"; x-mac-creator="4D4F5353"
Content-Transfer-Encoding: 8bit
Re ,
Ce n'est pas que je ne veuille pas, mais que je ne sais pas : je suis avant tout un
utilisateur Mac qui connait bien Excel.
Cela me permet de développer des applis Excel/VBA, y compris sur PC, mais ma
connaissance des arcanes de DOS et Windows est quasi nulle.
Par exemple, je voudrais essayer d'avoir des menus en Verdana 10 dans une appli
Je sais passer par le panneau de config, Affichage, ... Eléments, Menus et choisir
une police, une taille et une couleur. Mais où chercher pour savoir quels sont les
paramètres correspondants ?
Le comble est que le seule réponse obtenue sur MPFS (MPF.Scripting) ;-(( a été
un conseil de reposter ma demande sur un forum office développement.
Cordialement,
Michel Gaboly
http://www.gaboly.com
--------------43B87B72E75B606497DEE8CC
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
<html>
<body bgcolor="#FFFFFF">
Re ,
<p>Ce n'est pas que je ne veuille pas, mais que je ne sais pas : je suis
avant tout un
<p>Cela me permet de développer des applis Excel/VBA, y compris
sur PC, mais ma
<p>Par exemple, je voudrais essayer d'avoir des menus en Verdana 10 dans
une appli
Menus et choisir
savoir quels sont les
<br>paramètres correspondants ?
;-(( a été
<blockquote TYPE=CITE><style></style>
<font face="Arial"><font size=-1>quelles
sont les modif que tu veux faire à partir du panneau de config (personnalisation
de barre d'outils ?) et quelles opérations y fais-tu manuellement
?</font></font><font face="Arial"><font size=-1>si tu ne veux pas toucher
aux bases de registres, tu peux essayer de trouver s'il existe une commande
VB ou même dos pour faire ces opé sur le panneau de config...</font></font>
<blockquote dir=ltr
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">"Michel
Gaboly" < a écrit dans le message de news: <p>Pour la première fois, j'ai posé une question hier sur
microsoft.public.fr.scripting,
<br>
<blockquote>Un client pour lequel j'ai développé une appli
Excel/VBA,
<br>me demande un truc que je ne sais pas faire ;-((
<p>Il voudrait que l'utilisateur final ne se rende pas compte
<br>serait d'avoir des menus spécifiques (je sais faire) avec une
<p>Avec Google, j'ai trouvé dans les archines du MPFE, un mes-
<br>sage de Patrick Penet qui montre comment ouvrir une instance
<br>d'Excel "insensible à un double clic dans l'explorateur sur
<br>d'autres documents Excel" :
<p> Dim oXL
<br> Set oXL = Nothing
<p> En double-cliquant sur le raccourci, l'applic va
s'ouvrir dans
<br> une première instance d'Excel qui restera
"insensible" aux éventuelles
<br> ouvertures d'autres fichiers Excel (par double clic
dans l'explorateur)
donc pas
<br>
<p>Est-il concevable avec un script VBS de lancer cette succes-
<br>sion d'opérations :
<p>Modifier l'aspect des menus via le panneau de config, ouvrir
<br>le document Excel contenant les macros, et à la fermeture
<br>d'Excel, rétablir les paramètres initiaux pour l'aspect
<p>Pour le rétablissement des paramètres initiaux, l'appel
d'un
<br>script VBS depuis Excel VBA (événement BeforeClose du
clas-
<p>--
<br>Cordialement,
<p>Michel Gaboly
<br> </blockquote>
</blockquote>
<p>--
<br>Cordialement,
<p>Michel Gaboly
<br>
</body>
</html>
--------------43B87B72E75B606497DEE8CC--
Pour ce genre d'application autonome, il faut envisager les points suivants:
Les menus sont totalement personnalisés et les actions possibles de l'utilisateur
vis à vis de l'application sont parfaitement identifiées et limitées à celles
autorisées par les menus ou les interfaces (userform). L'application étant
autonome, il ne doit pas être possible pour l'utilisateur d'ouvrir un autre
fichier excel au sein de la même cession que celle comprenant l'application; de
même, si une cession est déjà existante, le lancement de l'application doit
déclencher l'ouverture d'une nouvelle cession au sein de laquelle s'exécutera l'
application. La gestion des menus et de la configuration ainsi que la restauration
en l'état initial est exécutée par des procédures d'auto ouverture (ThisWorkbook_
Open / BeforeClose et / ou Auto_ Open / Close); l'accès au procédures de
restauration en l'état initial ne doit pas être accessible à l'utilisateur
(certaines options doivent donc être inhibées). Pour éviter l'ouverture
intempestive de ce fichier, il est souhaitable d'en changer l'extension; la
reconnaissance du fichier se faisant sur l'entête interne du fichier, cela ne
modifie pas son comportement. Pour lancer l'application, il est de bon goût
d'installer un raccourci sur le bureau, lequel raccourci fait référence à un
fichier vbscript chargé d'ouvrir l'application tout en by-passant la sécurité des
macros. L'installation du raccourci étant également réalisée au moyen d'un fichier
vbscript d'installation. Dans l'hypothèse ou ce fichier peut être ouvert sans
passer par le raccourci, il faut prévoir une page d'accueil qui ne sera masquée
que si les macros sont activées; pour un aspect professionnel, on peut également
personnaliser le logo de la barre de titre.
Je peux te joindre un exemple en bal perso, mais comme tu es sur Mac, je ne
garantis pas la compatibilité.
MP
"Michel Gaboly" news: