- forum
- PowerShell
- Entraide pour les débutants
- formatage de fichiers Excel (2010) avec Powershell (5.1)
Question
formatage de fichiers Excel (2010) avec Powershell (5.1)
- MONNOT
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 3
- Remerciements reçus 0
il y a 2 ans 2 mois #32384
par MONNOT
formatage de fichiers Excel (2010) avec Powershell (5.1) a été créé par MONNOT
Bonjour ,
Je suis en train de développer un script Powershell pour manipuler des fichiers Excel et les exporter ensuite en PDF.
J'arrive a alimenter ma feuille Excel, à mettre en forme le tableau (largeur des colonnes, bordures) avec les commandes ci dessous :
Par contre je souhaiterais changer les marges de la feuille (par défaut le classeur est créé avec des marges normales).
Existe t'il une commande du genre "Microsoft.Office.Interop.Excel" qui permet de manipuler les marges ? Je n'arrive pas à trouver comment faire malgré pas mal de recherches sur le MSDN et autres sites.
Merci pour l'aide (vous l'aurez compris je ne suis pas développeur, plutôt débutant en Powershell, par nécessité !)
Je suis en train de développer un script Powershell pour manipuler des fichiers Excel et les exporter ensuite en PDF.
J'arrive a alimenter ma feuille Excel, à mettre en forme le tableau (largeur des colonnes, bordures) avec les commandes ci dessous :
####### bordures ######
$range = $ws.range("A12:H19")
$range.Borders.LineStyle = [Microsoft.Office.Interop.Excel.XlLineStyle]::xlContinuous
$range.Borders.Weight = 2
####### alignement des cellules ######
$range = $ws.range("D1")
$range.HorizontalAlignment = [Microsoft.Office.Interop.Excel.XlHAlign]::xlHAlignCenter
Par contre je souhaiterais changer les marges de la feuille (par défaut le classeur est créé avec des marges normales).
Existe t'il une commande du genre "Microsoft.Office.Interop.Excel" qui permet de manipuler les marges ? Je n'arrive pas à trouver comment faire malgré pas mal de recherches sur le MSDN et autres sites.
Merci pour l'aide (vous l'aurez compris je ne suis pas développeur, plutôt débutant en Powershell, par nécessité !)
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 2 ans 2 mois - il y a 2 ans 2 mois #32385
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet formatage de fichiers Excel (2010) avec Powershell (5.1)
Salut,
je n'ai pas de réponse à te proposer, dans ces cas je recherche des exemples de code C# : c# excel horizontalalignment
Autre piste : crée une macro en modifiant la marge et vérifie le code VBA.
je n'ai pas de réponse à te proposer, dans ces cas je recherche des exemples de code C# : c# excel horizontalalignment
Autre piste : crée une macro en modifiant la marge et vérifie le code VBA.
Tutoriels PowerShell
Dernière édition: il y a 2 ans 2 mois par Laurent Dardenne. Raison: coquille
Connexion ou Créer un compte pour participer à la conversation.
- MONNOT
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 3
- Remerciements reçus 0
il y a 2 ans 2 mois #32388
par MONNOT
Réponse de MONNOT sur le sujet formatage de fichiers Excel (2010) avec Powershell (5.1)
Merci pour la réponse, pour le VBA compliqué car ce sont des fichiers Excel créés par un ETL externe.
Pour le c# je ne maitrise pas du tout. Je ne sais pas du tout comment l'intégrer dans mon script PowerShell. Les fonctions (je ne sais pas si c'est le bon terme) HorizontalAlignment que j'utilise alignent le texte dans les cellules excel (ça, ça fonctionne) ce que je veux, ce n'est pas centrer le tableau sur la feuille mais réduire le nombre de cm des marges haut / bas etc.
J'ai peut être une piste avec Microsoft.Office.Interop.Excel.TextFrame mais je ne trouve pas comment l'utiliser (j'ai pas posté dans la catégorie débitant pour rien )
Pour le c# je ne maitrise pas du tout. Je ne sais pas du tout comment l'intégrer dans mon script PowerShell. Les fonctions (je ne sais pas si c'est le bon terme) HorizontalAlignment que j'utilise alignent le texte dans les cellules excel (ça, ça fonctionne) ce que je veux, ce n'est pas centrer le tableau sur la feuille mais réduire le nombre de cm des marges haut / bas etc.
J'ai peut être une piste avec Microsoft.Office.Interop.Excel.TextFrame mais je ne trouve pas comment l'utiliser (j'ai pas posté dans la catégorie débitant pour rien )
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 2 ans 2 mois #32390
par Philippe
Réponse de Philippe sur le sujet formatage de fichiers Excel (2010) avec Powershell (5.1)
Salut
j'ai trouvé ceci :
je te laisse adapter à tes variables !
j'ai trouvé ceci :
$Myexcel = New-Object -ComObject excel.application
$Myexcel.visible = $true
$Myworkbook = $Myexcel.workbooks.add()
$Sheet1 = $Myworkbook.worksheets.item(1)
$Sheet1.name = "Power"
$Sheet1.cells.item(1,1) = 'NAME'
$Sheet1.cells.item(1,2) = 'POWERSHELL'
$Sheet1.PageSetup.LeftMargin = $Myexcel.CentimetersToPoints(2) # valeur en centimetre
$Sheet1.PageSetup.RightMargin = $Myexcel.CentimetersToPoints(2)
$Sheet1.PageSetup.TopMargin = $Myexcel.CentimetersToPoints(2)
$Sheet1.PageSetup.BottomMargin = $Myexcel.CentimetersToPoints(2)
$Myfile = 'C:\temp\example.xlsx'
$Myexcel.displayalerts = $false
$Myworkbook.Saveas($Myfile)
$Myexcel.displayalerts = $true
je te laisse adapter à tes variables !
Les utilisateur(s) suivant ont remercié: MONNOT
Connexion ou Créer un compte pour participer à la conversation.
- MONNOT
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 3
- Remerciements reçus 0
il y a 2 ans 2 mois #32394
par MONNOT
Réponse de MONNOT sur le sujet formatage de fichiers Excel (2010) avec Powershell (5.1)
Nickel, c'est exactement ce qu'il me fallait, merci.
Connexion ou Créer un compte pour participer à la conversation.
- forum
- PowerShell
- Entraide pour les débutants
- formatage de fichiers Excel (2010) avec Powershell (5.1)
Temps de génération de la page : 0.114 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- formatage de fichiers Excel (2010) avec Powershell (5.1)