|
Publicité | |||||||||||||||||||||||
|
|
#1 (permalink) |
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Bonjour,
Je souhaite ouvrir un fichier automatiquement tous les jours au démarrage du PC. J'ai donc mis un raccourci de mon fichier excel dans le menu Démarrer/Programmes/Démarrage Le problème est que l'application excel s'ouvre, mais pas le classeur excel. Avez-vous une idée de pourquoi ça ne marche pas? J'ai essayé également de programmer une tâche windows mais on peut exécuter un programme mais pas un fichier... Merci pour votre aide! |
|
|
|
|
|
#3 (permalink) |
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Bonjour Laetitia,
J'ai créé un raccourci du fichier, et j'ai fait un glisser dans le menu démarrer. Lors du démarrage du pc seule l'application excel s'ouvre, mais si je déconnecte ma session et la reconnecte sans arrêter le pc le fichier excel s'ouvre bien. Je me demande si c'est pas tous les programmes qui tournent en tâche de fond au démarrage qui viennent polluer l'ouverture du fichier |
|
|
|
|
|
#4 (permalink) |
|
Inactif(ve)
Date d'inscription: juillet 2007
Localisation: au pays de la liberté d'esprit
Messages: 4 569
|
Bonjour,
fais un petit projet avec ceci : un Userform avec un bouton de commande Command1 et ce code : Code :
Private Sub Command1_Click() fic$ = "D\toto\titi\tata.xls" 'ici, mets le chemin complet de ton classeur, à la place de ce que j'ai écrit SaveString HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "WinTray", fic$ End Sub Unb module bas avec ce code : Code :
Public Const HKEY_CLASSES_ROOT = &H80000000 Public Const HKEY_CURRENT_USER = &H80000001 Public Const HKEY_LOCAL_MACHINE = &H80000002 Public Const HKEY_USERS = &H80000003 Public Const HKEY_PERFORMANCE_DATA = &H80000004 Public Const HKEY_CURRENT_CONFIG = &H80000005 Public Const HKEY_DYN_DATA = &H80000006 Public Const REG_NONE = 0 Public Const REG_SZ = 1 ' Unicode nul terminated string Public Const REG_EXPAND_SZ = 2 Public Const REG_BINARY = 3 Public Const REG_DWORD = 4 Public Const REG_DWORD_LITTLE_ENDIAN = 5 Public Const REG_LINK = 6 Public Const REG_MULTI_SZ = 7 Public Const REG_RESOURCE_LIST = 8 Public Const REG_FULL_RESOURCE_DESCRIPTOR = 9 Public Const REG_RESOURCE_REQUIREMENTS_LIST = 10 Public Const REG_QWORD = 11 Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long Public Sub SaveString(hKey As Long, strPath As String, strValue As String, strData As String) Dim ret RegCreateKey hKey, strPath, ret RegSetValueEx ret, strValue, 0, REG_SZ, ByVal strData, Len(strData) RegCloseKey ret End Sub Quitte Windows et reboot et vois ... Il est clair que tu peux faire la même chose en intervenant directement (et non par programme) sur ta base de registre ... |
|
|
|
|
|
#5 (permalink) |
|
Membre Expert
![]() Date d'inscription: décembre 2002
Localisation: 38
Âge: 20
Messages: 1 161
|
bonjour allergique l'ami ucfoutu le forum une autre methode sans toucher au registre. sous xp vista ca doit être pareil??
en 1 je fais un raccourci du fichier sur le bureau puis menu demarrer puis puis clic droit sur le dossier demarrage clic sur ouvrir puis dans la fenetre qui s'ouvre clic droit dans la fenetre qui s'ouvre dans un emplacement vide puis nouveau > raccourci > clic sur la fenetre qui s ouvre parcourir choisir un programme clic sur suivant pour fermer la fenetre terminer .
__________________
SALUTATIONS
|
|
|
|
|
|
#6 (permalink) |
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Bonjour,
Le système d'exploitation sur lequel le problème intervient est windows 2000. J'ai testé sur XP chez moi et a a l'air de fonctionner. Laetitia, j'ai testé la manip pour le raccourci mais rien ne change, excel s'ouvre mais sans classeur. Ucfoutu, est-ce qu'il y a un risque au niveau de la modification de la base de registre? C'est sur le pc de mon travail que ça ne marche pas, donc j'ai un peu peur de me faire taper dessus par le service informatique si je fais une erreur de manip! La première partie de code où on créé une clef avec le raccourci du fichier excel il n'y a pas de problème. J'ai fait la manip (sans faire la 2ème partie de ton code pour l'instant) mais pas de changement. Par contre, la 2ème partie de code j'ai du mal à voir ce qui est changé dans le registre et je n'ai pas encore testé. Est-ce qu'il y a moyen de revenir en arrière sur les modifications de registre si il y a un problème? En attendant j'ai cherché à faire un .bat qui exécute le fichier excel. Ca ouvre le fichier excel correctement mais j'ai l'invite de commande "cmd.exe" qui reste ouverte, et que je dois fermer manuellement. Est-ce qu'on peut en fin de code de macro vérifier si la fenêtre de commande est ouverte et la fermer automatiquement? |
|
|
|
|
|
#7 (permalink) |
|
Inactif(ve)
Date d'inscription: juillet 2007
Localisation: au pays de la liberté d'esprit
Messages: 4 569
|
Si tu n'es pas l'administrateur du système et que le responsable a empêché la modification de la base de registre, tu ne pourras rien faire sans qu'il t'y autorise (c'est clair). S'il l'a fait, c'est pour une raison qu'il est seul à connaître.
Si tu es en réseau, c'est encore plus délicat, bien évidemment. A toi de voir, au besoin avec lui ! En ce qui concerne la faculté de "revenir en arrière", il suffit de détruire la clé créée, soit directement dans la base de registre, soit par utilisation de la fonction RegDeleteKey de l'Api de Windows Nous n'y viendrons en détail et avec le code que lorsque tu auras eu l'aval du responsable informatique. |
|
|
|
|
|
#8 (permalink) |
|
Membre régulier
![]() Date d'inscription: janvier 2008
Localisation: Bourges
Messages: 124
|
Bonjour,
Voici une autre idée: Puisque tu arrives à faire ouvrir excel , pourquoi ne pas le faire ouvrir sur le dossier que tu veux avec un "private sub workbook_open"? Mon excel s'ouvre toujours sur ma feuille PERSO.XLS.Voici mon code plaçait dans le ThisWorkbook Code :
Private Sub Workbook_Open() Feuil1.Activate Application.CommandBars("Task Pane").Visible = True End Sub |
|
|
|
|
|
#9 (permalink) |
|
Inactif(ve)
![]() Date d'inscription: juin 2007
Localisation: Belqique
Messages: 2 074
|
Bonjour tou(te)s,
Un moyen simple, dans le menu demarrage mettre un raccourci de l'appli Excel (pas le classeur) Dans le répertoir... Programmes\Microsoft Offfice\Office\XLStart mettre un raccourci du classeur. A+ |
|
|
|
|
|
#10 (permalink) | |
|
Membre éprouvé
![]() Date d'inscription: juillet 2007
Localisation: Quelque part en Hexagone
Messages: 430
|
Citation:
à mon avis la commande "Exit" en fin de batch suffit Exemple: Code :
start c:\test.xls exit |
|
|
|
|
|
|
#11 (permalink) |
|
Membre éclairé
![]() Date d'inscription: juillet 2003
Localisation: Lille
Âge: 27
Messages: 359
|
Bonjour à tous !
Une version bourrin : Tu ouvres l'appli avec le path/nom du fichier Tu kill le processus cmd.exe Code :
@echo off "Chemin\Excel.exe" "Chemin\Fichier.xls" TSKill /a cmd.exe C'est moche, je sais. Je me déteste. ![]() Si un modo du forum batch passe par là, je suis mort ![]() La méthode de Casavba reste la plus propre. |
|
|
|
|
|
#12 (permalink) | |
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Citation:
Bonjour tout le monde! j'ai essayé ton code, mais le résultat est identique J'ai cherché sur google et ce problème est à priori connu sur windows 2000 mais je n'ai pas trouvé de site où ils ont trouvé la cause. |
|
|
|
|
|
|
#13 (permalink) | ||
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Citation:
Citation:
Le fichier ne sert qu'à faire des mises à jour une fois par jour seulement, donc ça serait un peu embêtant si excel exécutait le fichier à chaque fois que je le lance... |
||
|
|
|
|
|
#14 (permalink) | |
|
Membre régulier
![]() Date d'inscription: août 2006
Localisation: Yvelines
Messages: 131
|
Citation:
Je le testerai lundi sur windows 2000 pour confirmer que tout va bien et je vous dirai quoi... Pour mon information, qu'est-ce qui fait qu'avec "start c:\test.xls", le fichier excel s'ouvre et la fenêtre de commande se referme tout de suite, alors qu'avec le code "C:\Program Files\Microsoft Office\OFFICE11\excel.exe" "c:\test.xls" la fenêtre de commande ne se ferme qu'après que le fichier excel soit fermé? Quelle est la particularité de "start"? Merci à tous de vous être penchés sur mon problème
|
|
|
|
|
|
|
#15 (permalink) |
|
Membre régulier
![]() Date d'inscription: janvier 2008
Localisation: Bourges
Messages: 124
|
Bonjour allergique
XLSTART:c'est là que se trouve ma page PERSO.XLS et ainsi on fait ouvrir Excel sur la page ou le dossier.xls que l'on veut. START, STARTER = départ ( c'est ma traduction à moi XLSTART = départ, démarrage d'Excel. @+ |
|
|
|
|
|
![]() |
||
[XL-2003] Ouverture fichier au démarrage du PC
|
||
| Outils de la discussion | |
|
|