Question
[Résolu] - Mise en forme d'un résultat
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 14 ans 7 mois #9985
par FO
[Résolu] - Mise en forme d'un résultat a été créé par FO
Bonjour à tous,
J'utilise les cmdlets pour travailler avec Active Directory, plus particulièrement pour faire un export de plusieurs attributs.
La commande est la suivante :
[code:1]get-QADUser -IncludeAllProperties -SearchAttributes @{DisplayName='Ben*';mail='b*'} | select mail,DisplayName,name[/code:1]
Le résultat est affiché sous forme de colonne (voir ci-dessous)
mail DisplayName name
yyyyyy titi titi
xxxxxx tata tata
Je souhaiterai récupérer les informations dans un fichier xlsx ( colonne / colonne)
J'arrive bien à les récuperer dans un fichier .CSV avec la commande export-csv mais je suis obligé de reconvertir dans Excel mon fichier CSV afin de supprimer les ,
Est-il possible de convertir un fichier CSV en xlsx en supprimant les , (fonction convertir dans excel) en powershell? ou de traiter directement la sortie de ma commande pour qu'elle soit dans un fichier excel?
Merci d'avance pour votre aide.<br><br>Message édité par: Benjy, à: 11/08/11 08:34
J'utilise les cmdlets pour travailler avec Active Directory, plus particulièrement pour faire un export de plusieurs attributs.
La commande est la suivante :
[code:1]get-QADUser -IncludeAllProperties -SearchAttributes @{DisplayName='Ben*';mail='b*'} | select mail,DisplayName,name[/code:1]
Le résultat est affiché sous forme de colonne (voir ci-dessous)
mail DisplayName name
yyyyyy titi titi
xxxxxx tata tata
Je souhaiterai récupérer les informations dans un fichier xlsx ( colonne / colonne)
J'arrive bien à les récuperer dans un fichier .CSV avec la commande export-csv mais je suis obligé de reconvertir dans Excel mon fichier CSV afin de supprimer les ,
Est-il possible de convertir un fichier CSV en xlsx en supprimant les , (fonction convertir dans excel) en powershell? ou de traiter directement la sortie de ma commande pour qu'elle soit dans un fichier excel?
Merci d'avance pour votre aide.<br><br>Message édité par: Benjy, à: 11/08/11 08:34
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 14 ans 7 mois #9986
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Mise en forme d'un résultat
Bonjour,
Avec quelque chose du genre
[code:1]Get-QADUser -IncludeAllProperties -SearchAttributes @{DisplayName='Ben*';mail='b*'} | select mail,DisplayName,name | Export-Csv -NoTypeInformation -Delimiter \";\" -Encoding Default -Path .\MonFicher.csv[/code:1]
Tu devrais pouvoir ensuite ouvrir le fichier csv via Excel : il sera présenté sous la forme d'un tableau. Tu pourras ensuite éventuellement enregistrer le document une fois ouvert sous Excel en tant que fichier xls ou xlsx...
Si tu ne précises pas le paramétres '-delimiter \";\"', le délimiteur par défaut est la ','. La virgule est le séparateur par défaut lorsqu'on est en paramètres régionaux \"Anglais (xxx)\".
En espérant que cela puisse t'aider
@ +
Matthew BETTON<br><br>Message édité par: Matthew BETTON, à: 4/08/11 20:37
Avec quelque chose du genre
[code:1]Get-QADUser -IncludeAllProperties -SearchAttributes @{DisplayName='Ben*';mail='b*'} | select mail,DisplayName,name | Export-Csv -NoTypeInformation -Delimiter \";\" -Encoding Default -Path .\MonFicher.csv[/code:1]
Tu devrais pouvoir ensuite ouvrir le fichier csv via Excel : il sera présenté sous la forme d'un tableau. Tu pourras ensuite éventuellement enregistrer le document une fois ouvert sous Excel en tant que fichier xls ou xlsx...
Si tu ne précises pas le paramétres '-delimiter \";\"', le délimiteur par défaut est la ','. La virgule est le séparateur par défaut lorsqu'on est en paramètres régionaux \"Anglais (xxx)\".
En espérant que cela puisse t'aider
@ +
Matthew BETTON<br><br>Message édité par: Matthew BETTON, à: 4/08/11 20:37
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 14 ans 7 mois #10004
par FO
Réponse de FO sur le sujet Re:Mise en forme d'un résultat
Merci matthew !
C'est éxactement ça.
J'ai trouvé un bout de code pour convertir mon CSV en XLS mais pas en XLSX.
Ci-dessous, le code utilisé :
[code:1]$xlExcel8 = 56
$Excel = New-Object -ComObject excel.application
$Excel.visible = $False
$Excel.displayalerts=$False
$WorkBook = $Excel.Workbooks.Open($sourcedestfile)
$WorkSheet = $Workbook.worksheets.Item(1)
$Resize = $WorkSheet.UsedRange
$Resize.EntireColumn.AutoFit()
$WorkBook.SaveAs(\"D:\Users.xls\", $xlExcel8)
$Excel.quit()[/code:1]
Par contre je ne comprends pas le bout de code suivant :
[code:1]$xlExcel8 = 56[/code:1]
C'est pour définir le format?
C'est éxactement ça.
J'ai trouvé un bout de code pour convertir mon CSV en XLS mais pas en XLSX.
Ci-dessous, le code utilisé :
[code:1]$xlExcel8 = 56
$Excel = New-Object -ComObject excel.application
$Excel.visible = $False
$Excel.displayalerts=$False
$WorkBook = $Excel.Workbooks.Open($sourcedestfile)
$WorkSheet = $Workbook.worksheets.Item(1)
$Resize = $WorkSheet.UsedRange
$Resize.EntireColumn.AutoFit()
$WorkBook.SaveAs(\"D:\Users.xls\", $xlExcel8)
$Excel.quit()[/code:1]
Par contre je ne comprends pas le bout de code suivant :
[code:1]$xlExcel8 = 56[/code:1]
C'est pour définir le format?
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 14 ans 7 mois #10006
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Mise en forme d'un résultat
Bonsoir,
Benjy écrit:
Tout à fait. La variable '$xlExcel8' sert de paramètre dans l'appel de la méthode 'SaveAS'.
56 doit correspondre au format \"Excel 97 / 2003\", donc 'xls'.
Pour la version 2007 / 2010 ('xlsx'), c'est à priori 51.
A tester
@ +
Matthew<br><br>Message édité par: Matthew BETTON, à: 8/08/11 21:47
Benjy écrit:
C'est pour définir le format?
Tout à fait. La variable '$xlExcel8' sert de paramètre dans l'appel de la méthode 'SaveAS'.
56 doit correspondre au format \"Excel 97 / 2003\", donc 'xls'.
Pour la version 2007 / 2010 ('xlsx'), c'est à priori 51.
A tester
@ +
Matthew<br><br>Message édité par: Matthew BETTON, à: 8/08/11 21:47
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 14 ans 7 mois #10017
par FO
Réponse de FO sur le sujet [Résolu] Re:Mise en forme d'un résultat
Merci bien !
Ca fonctionne.
Ca fonctionne.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.049 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [Résolu] - Mise en forme d'un résultat