More

    Pas besoin de s’agiter ! Voici comment convertir CSV en XLSX sans ouvrir Excel – utilisez simplement CMD !

    Étapes pour convertir CSV en Excel (XLS/XLSX) via la ligne de commande

    Dans le monde Windows, PowerShell est le couteau suisse de l’automatisation des systèmes. En ce qui concerne la  conversion de CSV en Excel, PowerShell offre une solution élégante grâce au  module ImportExcel.

    Ce module ImportExcel est spécialement conçu pour manipuler des fichiers Excel directement à partir de la ligne de commande, sans avoir besoin d’installer Microsoft Office. Son principal avantage réside dans sa capacité à gérer des fichiers volumineux avec une grande efficacité, tout en conservant le format et la structure des données d’origine.

    Premiers pas avec le module ImportExcel

    Avant de pouvoir profiter de la puissance de ce module, vous devez d’abord l’installer. Le processus d’installation est très simple :

    Install-Module -Name ImportExcel -Force -Scope CurrentUser

    Quelques points importants à propos de ce processus d’installation :

    1. Parameter -Force garantit que l’installation se déroule sans confirmation supplémentaire
    2. -Scope CurrentUser installe le module uniquement pour votre compte courant
    3. Le processus nécessite une connexion Internet pour télécharger le package à partir de la galerie PowerShell

    Si vous rencontrez une erreur concernant la stratégie d’exécution, exécutez-la d’abord :

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

    Conversion de CSV en Excel Magic Script

    Une fois le module installé avec succès, vous pouvez immédiatement exécuter le script de conversion de fichier CSV en Excel avec la syntaxe suivante :

    Import-Csv “C :\path\to\data.csv” |Export-Excel “C :\output\data.xlsx” -WorksheetName “Sheet1”

    Disséquons ce script partie par section :

    • Import-Csv : lire un fichier CSV et le convertir en objet PowerShell
    • | (Pipeline) : Envoie des données d’une commande à l’autre
    • Export-Excel : Recevoir des données et les écrire dans un fichier Excel
    • -WorksheetName : Spécifie le nom de la feuille de calcul à créer

    Variations avancées pour des besoins complexes

    La vraie force de PowerShell réside dans sa flexibilité. Voici quelques modifications avancées que vous pouvez mettre en œuvre :

    1. Convertissez plusieurs CSV à la fois

    Get-ChildItem “C :\data\*.csv” |ForEach-Object {
     $excelPath =$_.FullName -replace ''\.csv$','.xlsx'
     Import-Csv $_ |Export-Excel $excelPath
    }

    2. Ajouter plusieurs feuilles de travail

    $excel = New-Excel
    Import-Csv “data1.csv” | Export-Excel -ExcelPackage $excel -WorksheetName “Sales”
    Import-Csv “data2.csv” |Export-Excel -ExcelPackage $excel -WorksheetName “Inventory”
    Close-ExcelPackage $excel -SaveAs “report.xlsx”

    3. Avec formatage automatique

    Import-Csv “data.csv” |Export-Excel “output.xlsx” -AutoSize -BoldTopRow -FreezeTopRow

    Dépannage

    Bien que le processus de conversion d’un fichier CSV en Excel (XLSX) à l’aide  de PowerShell ait tendance à être simple, en pratique, vous pouvez rencontrer des problèmes techniques, en particulier si vous utilisez la ligne de commande pour la première fois ou si vous travaillez avec des fichiers volumineux. Voici quelques-uns des problèmes qui se posent souvent et comment les résoudre efficacement :

    Modules inconnus

    Si vous obtenez un message d’erreur tel que The term ‘Export-Excel’ is not recognized, cela signifie que PowerShell ne reconnaît pas les commandes du module ImportExcel. Ce problème se produit généralement parce que le module n’est pas installé correctement ou que PowerShell s’exécute sans autorisation d’administrateur.

    Solution:

    • Assurez-vous que vous exécutez PowerShell en tant qu’administrateur. Cliquez avec le bouton droit sur l’icône PowerShell et sélectionnez Exécuter en tant qu’administrateur avant d’exécuter la commande Install-Module.
    • Vérifiez si le module est installé en exécutant :
    Get-Module -ListAvailable ImportExcel
    • Si le module n’est pas déjà présent, répétez le processus d’installation en :
    Install-Module -Name ImportExcel -Force

    Dernières articles