Question
Impression puis deplacement de fichier Excel
- Ome
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 23
- Remerciements reçus 0
Alors mon code fonctionne a savoir qu'il imprime automatiquement un fichier excel mais il me manque des fonctionnalités :
Je souhaiterais déplacer un fichier Excel dans un autre répertoire mais j’obtiens une erreur :
Move-Item : Le processus ne peut pas accéder au fichier, car il est utilisé par un autre processus.
En effet j'ouvre le fichier avant pour l'imprimer.
J'aimerais également que le powershell ouvre le premier fichier Excel disponible et non pas un fichier nommé
car les fichiers change de nom à chaque fois.$path = \"C:\Powershell\test\test.xlsx\"
Voici mon code
[code:1]$path = \"C:\Powershell\test\test.xlsx\"
$objExcel = new-object -comobject excel.application
$objExcel.Visible = $False
$objWorkbook = $objExcel.WorkBooks.Open($path)
$objWorksheet = $objWorkbook.Worksheets.Item(1)
$objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
$objWorksheet.PrintOut(1,1,2)
$objexcel.Quit()
$objExcelattachment.Dispose()
Move-Item -Path $path -Destination \"C:\Powershell\test\archive\"[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Ome
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 23
- Remerciements reçus 0
Bonjour,
Alors mon code fonctionne a savoir qu'il imprime automatiquement un fichier excel mais il me manque des fonctionnalités :
Je souhaiterais déplacer un fichier Excel dans un autre répertoire mais j’obtiens une erreur :Move-Item : Le processus ne peut pas accéder au fichier, car il est utilisé par un autre processus.
En effet j'ouvre le fichier avant pour l'imprimer.
J'aimerais également que le powershell ouvre le premier fichier Excel disponible et non pas un fichier nommécar les fichiers change de nom à chaque fois.$path = \"C:\Powershell\test\test.xlsx\"
Voici mon code
[code:1]$path = \"C:\Powershell\test\test.xlsx\"
$objExcel = new-object -comobject excel.application
$objExcel.Visible = $False
$objWorkbook = $objExcel.WorkBooks.Open($path)
$objWorksheet = $objWorkbook.Worksheets.Item(1)
$objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
$objWorksheet.PrintOut(1,1,2)
$objexcel.Quit()
$objExcelattachment.Dispose()
Move-Item -Path $path -Destination \"C:\Powershell\test\archive\"[/code:1]
Bon j'ai avancé mon seul problème qu'il me reste est celui la :
J'aimerais également que le powershell ouvre le premier fichier Excel disponible et non pas un fichier nommé
car les fichiers change de nom à chaque fois.$path = \"C:\Powershell\test\test.xlsx\"
Connexion ou Créer un compte pour participer à la conversation.
- Sinjk
- Hors Ligne
- Membre premium
- Messages : 99
- Remerciements reçus 0
Si je comprend bien ton problème, l'exemple suivant:
[code:1]
$path = gci C:\Powershell\test -Filter *.xlsx | select -First 1
$objExcel = new-object -comobject excel.application
$objExcel.Visible = $false
$objWorkbook = $objExcel.WorkBooks.Open($path.FullName)
$objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
$objWorksheet.PrintOut(1,1,2)
$objexcel.Quit()
$objExcelattachment.Dispose()
Move-Item -Path $path -Destination \"C:\Powershell\test\archive\"
[/code:1]
Va te permettre de selectionner le premier xlsx qui se trouve dans ton dossier et le traiter.
Qu'entends tu par
?J'aimerais également que le powershell ouvre le premier fichier Excel disponible
Bon courage
Connexion ou Créer un compte pour participer à la conversation.
- Ome
- Auteur du sujet
- Hors Ligne
- Membre junior
- Messages : 23
- Remerciements reçus 0
Bon j'ai trouvé il fallait juste utiliser la commande dir. Par contre c'est possible de faire ça sans excel d'installer ?Ome écrit:
Bonjour,
Alors mon code fonctionne a savoir qu'il imprime automatiquement un fichier excel mais il me manque des fonctionnalités :
Je souhaiterais déplacer un fichier Excel dans un autre répertoire mais j’obtiens une erreur :Move-Item : Le processus ne peut pas accéder au fichier, car il est utilisé par un autre processus.
En effet j'ouvre le fichier avant pour l'imprimer.
J'aimerais également que le powershell ouvre le premier fichier Excel disponible et non pas un fichier nommécar les fichiers change de nom à chaque fois.$path = \"C:\Powershell\test\test.xlsx\"
Voici mon code
[code:1]$path = \"C:\Powershell\test\test.xlsx\"
$objExcel = new-object -comobject excel.application
$objExcel.Visible = $False
$objWorkbook = $objExcel.WorkBooks.Open($path)
$objWorksheet = $objWorkbook.Worksheets.Item(1)
$objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
$objWorksheet.PrintOut(1,1,2)
$objexcel.Quit()
$objExcelattachment.Dispose()
Move-Item -Path $path -Destination \"C:\Powershell\test\archive\"[/code:1]
Bon j'ai avancé mon seul problème qu'il me reste est celui la :
J'aimerais également que le powershell ouvre le premier fichier Excel disponible et non pas un fichier nommécar les fichiers change de nom à chaque fois.$path = \"C:\Powershell\test\test.xlsx\"
Et il me reste une erreur :
Exception lors de la définition de «ActivePrinter»: «Exception de HRESULT :
0x800A03EC»
Au caractère C:\Powershell\Nouveau document texte.ps1:10 : 1
+ $objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ( [], SetValueInvocationException
+ FullyQualifiedErrorId : ExceptionWhenSetting
Voici mon nouveau code :
[code:1]
$dir = dir C:\Powershell\test\*.xlsx
$objExcel = new-object -comobject excel.application
$objExcel.Visible = $False
$objWorkbook = $objExcel.WorkBooks.Open($dir)
$objWorksheet = $objWorkbook.Worksheets.Item(1)
$objexcel.ActivePrinter = \"\\SVPIMPNEC1\INEUNI00\"
$objWorksheet.PrintOut(1,1,2)
$objexcel.Quit()
Stop-Process -name excel
Move-Item -Path $dir -Destination C:\Powershell\test\archive\ [/code:1]
Message édité par: Ome, à: 18/04/19 10:33
Message édité par: Ome, à: 18/04/19 10:37<br><br>Message édité par: Ome, à: 18/04/19 13:30
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Impression puis deplacement de fichier Excel