Je voudrais créer un fichier .vbs qui exécute le fichier .xlsm avec des privilèges d'administrateur [dupliquer]
Jan 09 2021
Je souhaite créer un fichier .vbs qui exécute le fichier .xlsm avec des privilèges d'administrateur.
La méthode à laquelle j'ai pensé est
- Exécutez le fichier Excel en tant qu'administrateur
- Ouvrez le fichier .xlsm à partir d'un Excel ouvert avec des privilèges d'administrateur
J'ai ouvert .xlsx en tant qu'administrateur, mais ...
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "C:\Program Files (x86)\Microsoft Office\Office16\EXCEL.EXE", "" , "", "runas", 0
Je ne peux pas contrôler le fichier .xlsx que j'ai ouvert en tant qu'administrateur par GetObject (, Excel.application)
Je demande respectueusement votre aide.
Réponses
Hackoo Jan 10 2021 at 15:38
Vous pouvez essayer avec ce fichier vbs:
Option Explicit
Call Run_as_Admin() ' We execute our script with admin rights !
Dim Ws,EXCEL_FILE_PATH
Set Ws = CreateObject("Wscript.Shell")
EXCEL_FILE_PATH = "C:\Path\file.xlsm" ' Just change this line into your path file
Ws.run EXCEL_FILE_PATH,1,True
'----------------------------------------
Sub Run_as_Admin()
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute DblQuote(WScript.FullName) _
, DblQuote(WScript.ScriptFullName) & " /elevate", "", "runas", 1
WScript.Quit
End If
End Sub
'--------------------------------------
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'-------------------------------------