Vérifier si une commande à bien été exécuté
Bonjour,
J'aimerais faire en sorte qu'a la fin du script, une indication affiche si les commandes ont bien été effectués. Mon problème est que la valeur booléen renvoyé par toute les commande est tout le temps False même si elles ont bien été exécuté. Ce script a pour but d'ouvrir un fichier excel, l'actualiser, le sauvegarder et le fermer. Je précise que je découvre le PowerShell et que j'ai trouvé ce script ici : https://blog.cellenza.com/data/power...ichiers-excel/
Merci pour vos réponse :)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
|
$excel = new-object -comobject Excel.Application
Start-Sleep -s 3
$excel.DisplayAlerts = $false
$excel.ScreenUpdating = $false
$excel.Visible = $false
$excel.UserControl = $false
$excel.Interactive = $false
$missing = [System.Reflection.Missing]::Value
echo $("Traitement du fichier : D:\Bureautique\Mes Documents\PowerShell\test\test.xlsx")
$excelworkbook = $excel.workbooks.Open("D:\Bureautique\Mes Documents\PowerShell\test\test.xlsx",$missing,$missing,$missing,$missing,$missing,$missing,$missing,$missing,$missing,$false,$missing,$missing,$missing)
Start-Sleep -s 2
echo "Lancement du refresh"
$result=[bool]$excelworkbook.RefreshAll()
Start-Sleep -s 2
echo "Sauvegarde"
$result2=[bool]$excelworkbook.Save()
Start-Sleep -s 2
echo "Fermeture du classeur"
$result3=[bool]$excelworkbook.Close()
Start-Sleep -s 2
$excel.Application.quit()
while( [System.Runtime.Interopservices.Marshal]::ReleaseComObject($excel)){}
echo ""
echo "Rapport d'exécution"
echo "-------------------"
if($result -eq $true){
echo "REFRESH : OK"
}
else
{
echo "REFRESH : FAILED"
}
if($result2 -eq $true){
echo "SAVE : OK"
}
else
{
echo "SAVE : FAILED"
}
if($result3 -eq $true){
echo "CLOSE : OK"
}
else
{
echo "CLOSE : FAILED"
}
echo ""
pause |