Question Creation fichier excel avec tache planifier
- Prades
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 5 ans 6 mois #28291
par Prades
Réponse de Prades sur le sujet Re:Creation fichier excel avec tache planifier
Pour ce paramètre de la tâche planifié:
C'est ce que j'ai pensé des le départ mais non, au contraire je perd l’accès au répertoire que je mesure et le problème reste.
C'est forcément un soucis avec la tache planifier mais lequel. En dehors de ceux qui ont eu la chance d'arriver a résoudre e problème avec les fameux répertoire desktop je n'ai pas la moindre autre solution.
Je ne vois pas !! Un problème de profil dans ce cas comme je l'ai vue pour d'autre chose ? vue le message ont ne dirait t'on pas un problème de droits d’accès? mais ou ?
C'est ce que j'ai pensé des le départ mais non, au contraire je perd l’accès au répertoire que je mesure et le problème reste.
C'est forcément un soucis avec la tache planifier mais lequel. En dehors de ceux qui ont eu la chance d'arriver a résoudre e problème avec les fameux répertoire desktop je n'ai pas la moindre autre solution.
Je ne vois pas !! Un problème de profil dans ce cas comme je l'ai vue pour d'autre chose ? vue le message ont ne dirait t'on pas un problème de droits d’accès? mais ou ?
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 5 ans 6 mois #28307
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:Creation fichier excel avec tache planifier
Hello !
De mémoire, une tâche qui peut interagir avec le bureau ne peut pas avoir accès au réseau. C'est l'un ou l'autre.
Essaie peut-être de modifier ton script dans ce sens pour tester ?
Arnaud
De mémoire, une tâche qui peut interagir avec le bureau ne peut pas avoir accès au réseau. C'est l'un ou l'autre.
Essaie peut-être de modifier ton script dans ce sens pour tester ?
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Hicham Madini
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 98
- Remerciements reçus 0
il y a 5 ans 6 mois #28317
par Hicham Madini
Réponse de Hicham Madini sur le sujet Re:Creation fichier excel avec tache planifier
Slt T800, slt Arbaud,
essaie l'une de ces solutions:
1- Boutton de droite sur ton fichier ==> general ==> unblock (debloquer, c'est ou bien un boutton ou une option à cocher)
2- cmd => dcomcnfg ==> Component services >Computer >My Computer>Dcom config> selectione microsoft Excel Application
Boutton de droite ==> general ==> identité (utilise le compte que tu veux)
3- sinon jette un coup d'oeil ici
troyvssharepoint.blogspot.com/2012/07/st...sting-one-today.html <br><br>Message édité par: hichammadd, à: 23/02/19 03:28
essaie l'une de ces solutions:
1- Boutton de droite sur ton fichier ==> general ==> unblock (debloquer, c'est ou bien un boutton ou une option à cocher)
2- cmd => dcomcnfg ==> Component services >Computer >My Computer>Dcom config> selectione microsoft Excel Application
Boutton de droite ==> general ==> identité (utilise le compte que tu veux)
3- sinon jette un coup d'oeil ici
troyvssharepoint.blogspot.com/2012/07/st...sting-one-today.html <br><br>Message édité par: hichammadd, à: 23/02/19 03:28
Connexion ou Créer un compte pour participer à la conversation.
- Prades
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 5 ans 6 mois #28330
par Prades
Réponse de Prades sur le sujet Re:Creation fichier excel avec tache planifier
Hello tous le monde et merci pour ses réponses.
J'ai testé la solution de Arnaud sans succès. Je vais la re tester et testé les solutions de hichammadd mais justement il me semble ne pas avoir trouver \"microsoft Excel Application\" dans cette interface , étrange non ? Excel y est forcément puisque sans la tache planifié ça fonctionne. Je passerai voir aussi le lien.
Dans tous les cas je vous tiens au courant.
J'ai testé la solution de Arnaud sans succès. Je vais la re tester et testé les solutions de hichammadd mais justement il me semble ne pas avoir trouver \"microsoft Excel Application\" dans cette interface , étrange non ? Excel y est forcément puisque sans la tache planifié ça fonctionne. Je passerai voir aussi le lien.
Dans tous les cas je vous tiens au courant.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 5 ans 6 mois #28339
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:Creation fichier excel avec tache planifier
Hello !
Je me suis fait avoir une fois dans un cas assez similaire et c'était un problème de version 32 ou 64 bits d'Office. En effet, en fonction de la version 32 ou 64 bits de l'outil qui te permet de visualiser/modifier les objets DCOM, tu ne verras que les DLL de la version correspondante.
Donc vérifie bien ce point.
Par exemple, à partir d'une console PowerShell 32 bits, tu ne peux instancier un objet COM 64 bits.
Arnaud
...il me semble ne pas avoir trouver \"microsoft Excel Application\" dans cette interface , étrange non ?
Je me suis fait avoir une fois dans un cas assez similaire et c'était un problème de version 32 ou 64 bits d'Office. En effet, en fonction de la version 32 ou 64 bits de l'outil qui te permet de visualiser/modifier les objets DCOM, tu ne verras que les DLL de la version correspondante.
Donc vérifie bien ce point.
Par exemple, à partir d'une console PowerShell 32 bits, tu ne peux instancier un objet COM 64 bits.
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Prades
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 5 ans 6 mois #28385
par Prades
Réponse de Prades sur le sujet Re:Creation fichier excel avec tache planifier
Hello
Merci il faudra que j'essaie ça mais il me semble avoir déjà essayé en changeant la partie de l'appel de powershell \"system32\" dans la tache planifiè par l'autre au nom plus étrange.
Par contre j'ai une solution qui fonctionne même si elle n'est pas aussi propre que ce que j'aurai aimé.
[code:1]
Start-Transcript \"D:\Scripts\IISlogsReports\logx.txt\"
if (test-path \"D:\Scripts\IISlogsReports\fintest.xlsx\"«») {Remove-Item -Force \"D:\Scripts\IISlogsReports\fintest.xlsx\"}
$objexcel = New-Object -ComObject excel.application
$objexcel.visible = $false
$objexcel.DisplayAlerts = $false
# Add workbook
$FilePAth = \"D:\Scripts\IISlogsReports\"
$file = \"D:\Scripts\IISlogsReports\xlsdetest.xlsx\"
$finalworkbook = $objexcel.workbooks.open($file)
$finalexcelrow = 1
$finalworksheet = $finalworkbook.worksheets.item(1)
$finalworkbook.worksheets.item(1).name = \"IIs log size\" # nommer onglet
$datess = get-date
$finalexcelrow = 1
$finalworksheet.cells.item($finalexcelrow,1)=\"datocol1\"
$finalworksheet.cells.item($finalexcelrow,2)=\"$datess\"
$ur = $finalworksheet.UsedRange
$null = $ur.entirecolumn.autofit()
Write-Verbose \"END Create tab for report\" -Verbose
$finalWorkBook.SaveAs(\"D:\Scripts\IISlogsReports\fintest.xlsx\"«»)
get-process -name excel | Stop-Process
Stop-Transcript
[/code:1]
Pour résumer, au lieu de créer un xlsx de 0 avec powershell, j'en ouvre un existant (créé à la main avec excel) vide, pour le modifier et le sauvegarder sous un autre nom ensuite. Ça fonctionne même en tache planifié.
Donc au lieu de:
[code:1]$finalworkbook = $objexcel.workbooks.add()[/code:1]
Cela donne:
[code:1]$finalworkbook = $objexcel.workbooks.open($file)[/code:1]
La ou $file est le chemin du fichier excel vide existant.
Pourquoi la première solution marche pour certains et pas pour d'autre ? J'ai l'impression qu'il n'y aurai un soucis de chemin voir de chemin complet avec ou sans le nom du fichier dans le cas d'un add(). J'ai rapidement essayé en y mettant un chemin, sans résultat mais je vais re tenter. Sinon, tan pis, je garde ma solution.
Le script complet créé un fichier excel avec les données brutes et un graphique de leurs variations journalières.
Merci il faudra que j'essaie ça mais il me semble avoir déjà essayé en changeant la partie de l'appel de powershell \"system32\" dans la tache planifiè par l'autre au nom plus étrange.
Par contre j'ai une solution qui fonctionne même si elle n'est pas aussi propre que ce que j'aurai aimé.
[code:1]
Start-Transcript \"D:\Scripts\IISlogsReports\logx.txt\"
if (test-path \"D:\Scripts\IISlogsReports\fintest.xlsx\"«») {Remove-Item -Force \"D:\Scripts\IISlogsReports\fintest.xlsx\"}
$objexcel = New-Object -ComObject excel.application
$objexcel.visible = $false
$objexcel.DisplayAlerts = $false
# Add workbook
$FilePAth = \"D:\Scripts\IISlogsReports\"
$file = \"D:\Scripts\IISlogsReports\xlsdetest.xlsx\"
$finalworkbook = $objexcel.workbooks.open($file)
$finalexcelrow = 1
$finalworksheet = $finalworkbook.worksheets.item(1)
$finalworkbook.worksheets.item(1).name = \"IIs log size\" # nommer onglet
$datess = get-date
$finalexcelrow = 1
$finalworksheet.cells.item($finalexcelrow,1)=\"datocol1\"
$finalworksheet.cells.item($finalexcelrow,2)=\"$datess\"
$ur = $finalworksheet.UsedRange
$null = $ur.entirecolumn.autofit()
Write-Verbose \"END Create tab for report\" -Verbose
$finalWorkBook.SaveAs(\"D:\Scripts\IISlogsReports\fintest.xlsx\"«»)
get-process -name excel | Stop-Process
Stop-Transcript
[/code:1]
Pour résumer, au lieu de créer un xlsx de 0 avec powershell, j'en ouvre un existant (créé à la main avec excel) vide, pour le modifier et le sauvegarder sous un autre nom ensuite. Ça fonctionne même en tache planifié.
Donc au lieu de:
[code:1]$finalworkbook = $objexcel.workbooks.add()[/code:1]
Cela donne:
[code:1]$finalworkbook = $objexcel.workbooks.open($file)[/code:1]
La ou $file est le chemin du fichier excel vide existant.
Pourquoi la première solution marche pour certains et pas pour d'autre ? J'ai l'impression qu'il n'y aurai un soucis de chemin voir de chemin complet avec ou sans le nom du fichier dans le cas d'un add(). J'ai rapidement essayé en y mettant un chemin, sans résultat mais je vais re tenter. Sinon, tan pis, je garde ma solution.
Le script complet créé un fichier excel avec les données brutes et un graphique de leurs variations journalières.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.126 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les initiés
- Creation fichier excel avec tache planifier