• Stars
    star
    2,215
  • Rank 20,817 (Top 0.5 %)
  • Language
    PowerShell
  • License
    Apache License 2.0
  • Created over 9 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

PowerShell module to import/export Excel spreadsheets, without Excel

PowerShell and Excel


Has the ImportExcel module helped you?

  • Made you look good to the boss?
  • Saved you time?
  • Made you more productive?

Consider donating. Thank you!

Donate



Follow on Twitter Subscribe on YouTube

Donate

Overview

Automate Excel with PowerShell without having Excel installed. Works on Windows, Linux and Mac. Creating Tables, Pivot Tables, Charts and much more just got a lot easier.

Examples ✨

Check out the more than 100 examples on ways to create amazing reports as well as make you more productive with PowerShell and Excel.

Basic Usage

Installation

Install-Module -Name ImportExcel

Create a spreadsheet

Here is a quick example that will create spreadsheet file from CSV data. Works with JSON, Databases, and more.

$data = ConvertFrom-Csv @"
Region,State,Units,Price
West,Texas,927,923.71
North,Tennessee,466,770.67
East,Florida,520,458.68
East,Maine,828,661.24
West,Virginia,465,053.58
North,Missouri,436,235.67
South,Kansas,214,992.47
North,North Dakota,789,640.72
South,Delaware,712,508.55
"@

$data | Export-Excel .\salesData.xlsx

Read a spreadsheet

Quickly read a spreadsheet document into a PowerShell array.

$data = Import-Excel .\salesData.xlsx

$data
Region State        Units Price
------ -----        ----- -----
West   Texas        927   923.71
North  Tennessee    466   770.67
East   Florida      520   458.68
East   Maine        828   661.24
West   Virginia     465   053.58
North  Missouri     436   235.67
South  Kansas       214   992.47
North  North Dakota 789   640.72
South  Delaware     712   508.55

Add a chart to spreadsheet

Chart generation is as easy as 123. Building charts based on data in your worksheet doesn't get any easier.

Plus, it is automated and repeatable.

$data = ConvertFrom-Csv @"
Region,State,Units,Price
West,Texas,927,923.71
North,Tennessee,466,770.67
East,Florida,520,458.68
East,Maine,828,661.24
West,Virginia,465,053.58
North,Missouri,436,235.67
South,Kansas,214,992.47
North,North Dakota,789,640.72
South,Delaware,712,508.55
"@

$chart = New-ExcelChartDefinition -XRange State -YRange Units -Title "Units by State" -NoLegend

$data | Export-Excel .\salesData.xlsx -AutoNameRange -ExcelChartDefinition $chart -Show

Add a pivot table to spreadsheet

Categorize, sort, filter, and summarize any amount data with pivot tables. Then add charts.

$data = ConvertFrom-Csv @"
Region,State,Units,Price
West,Texas,927,923.71
North,Tennessee,466,770.67
East,Florida,520,458.68
East,Maine,828,661.24
West,Virginia,465,053.58
North,Missouri,436,235.67
South,Kansas,214,992.47
North,North Dakota,789,640.72
South,Delaware,712,508.55
"@

$data | Export-Excel .\salesData.xlsx -AutoNameRange -Show -PivotRows Region -PivotData @{'Units'='sum'} -PivotChartType PieExploded3D

Convert Excel data to other formats

Create a separate CSV file for each Excel sheet

Do you have an Excel file with multiple sheets and you need to convert each sheet to CSV file?

Problem Solved

The yearlyRetailSales.xlsx has 12 sheets of retail data for the year.

This single line of PowerShell converts any number of sheets in an Excel workbook to separate CSV files.

(Import-Excel .\yearlyRetailSales.xlsx *).GetEnumerator() |
ForEach-Object { $_.Value | Export-Csv ($_.key + '.csv') }

Additional Resources

Videos

More Videos

Articles

Title Author Twitter
More tricks with PowerShell and Excel James O'Neill @jamesoneill
Using the Import-Excel module: Part 1 Importing James O'Neill @jamesoneill
Using the Import Excel module part 2: putting data into .XLSx files James O'Neill @jamesoneill
Using the import Excel Module: Part 3, Pivots and charts, data and calculations James O'Neill @jamesoneill
Export AdventureWorksDW2017 to Excel for a Power BI Demo with Export-Excel Aaron Nelson @sqlvariant
Creating beautiful Powershell Reports in Excel Doug Finke @dfinke
PowerShell Excel and Conditional Formatting Doug Finke @dfinke
Learn to Automate Excel like a Pro with PowerShell Doug Finke @dfinke

Contributing

Contributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change.

Original README.md

More Repositories

1

PowerShellAI

PowerShell AI module for OpenAI GPT-3 and DALL-E
PowerShell
689
star
2

Tiny-PowerShell-Projects

Learning PowerShell through test-driven development of games and puzzles
PowerShell
368
star
3

powershell-for-developers

PowerShell examples for the book "PowerShell for Developers"
C#
158
star
4

NameIT

PowerShell module for randomly generating data
PowerShell
131
star
5

PowerShellHumanizer

PowerShell Humanizer wraps Humanizer: meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities
Jupyter Notebook
120
star
6

vscode-pandoc

Visual Studio Code extension lets you render markdown to pdf, word doc or html with pandoc
TypeScript
120
star
7

powershell-algorithms

Algorithms and data structures implemented in PowerShell with explanations and links to further readings - port of https://github.com/trekhleb/javascript-algorithms
PowerShell
117
star
8

PSharp

Productivity tool that makes PowerShell ISE better
PowerShell
110
star
9

PowerShellNotebook

Let's you automate PowerShell Notebooks with PowerShell at the command line, exports to Excel and more. On the gallery
PowerShell
110
star
10

powershell-notebooks

Get started learning PowerShell with PowerShell notebooks powered by .NET Interactive and VS Code.
PowerShell
92
star
11

InstallModuleFromGitHub

Install PowerShell Modules from GitHub
PowerShell
80
star
12

OutTabulatorView

PowerShell - Sending output to an interactive table in a browser
PowerShell
71
star
13

PSFuzzySearch

PowerShell Fuzzy search applies fuzzy searching to text
PowerShell
58
star
14

PoShLucene

PowerShell WPF GUI over Lucene.NET
PowerShell
52
star
15

PSAI

PowerShell AI module. Brings OpenAI to the console and scripts
PowerShell
51
star
16

PSStringScanner

Provides lexical scanning operations on a String
PowerShell
49
star
17

OneGetGistProvider

Gist-as-a-Package - PackageManagement PowerShell Provider to interop with Github Gists
PowerShell
45
star
18

PowerShellAIAssistant

Enhance PowerShell scripting with AI using PowerShell AI Assistant module.
PowerShell
43
star
19

edge-powershell

Run Powershell in node.js
C#
42
star
20

PSAdvantage

GitHub Actions at your Fingertips! ✨ - via PowerShell
PowerShell
40
star
21

PowerShellJson

Query JSON with PowerShell
PowerShell
38
star
22

Posh-Gist

PowerShell cmdlets for interacting with GitHub Gist
PowerShell
38
star
23

PSKit

A suite of command-line tools for working with PowerShell Arrays. From querying to doing array statistics.
PowerShell
37
star
24

edge-ps

PowerShell compiler for edge.js
JavaScript
37
star
25

IsePester

Module to integrate PowerShell Pester into ISE
PowerShell
34
star
26

PowerShellMicroservice

A PowerShell REST API running as a microservice in a Docker container.
PowerShell
32
star
27

ConvertToClass

PowerShell module to convert JSON or CSV to a PowerShell class definition
PowerShell
30
star
28

ConvertFromMarkdown

From your Markdown to generated chapters, run ScriptAnalyzer on your examples and generate HTML, a Word Doc or PDF. Table of Contents included
PowerShell
29
star
29

PSMatcher

PSMatcher is a test utility, that lets you easily test responses and json, when some part of the response is something out of your control (autogenerated id, guid, datetime etc). (And More)
PowerShell
29
star
30

PSWeave

PSWeave: a PowerShell module bringing OpenAI's GPT to your fingertips, and simplified prompt engineering
PowerShell
28
star
31

awesome-powershell-azure-functions

Curating the Best PowerShell Resources for Azure Functions
27
star
32

PSDataFrame

Use PowerShell to make data exploration easy
PowerShell
26
star
33

ServerlessPowerShell

PowerShell module that let's you rapidly deploy PowerShell scripts as Azure http trigger functions
PowerShell
25
star
34

OneGetGitHubProvider

GitHub-as-a-Package - PackageManagement PowerShell Provider to interop with Github
PowerShell
25
star
35

PowerShellAI-ContentGenerator

A versatile content generator using GPT and PowerShell
PowerShell
24
star
36

powershellScripts

PowerShell Scripts
JavaScript
24
star
37

PowerShellScottPlot

Jupyter Notebook
23
star
38

PSProse

PowerShell module for the Microsoft Program Synthesis SDK https://github.com/Microsoft/prose
PowerShell
23
star
39

dfinke

Use automation to increase bandwidth in order to address technical debt
PowerShell
21
star
40

PowerShellPivot

PowerShell
20
star
41

ODataExplorer

An 'OData Explorer' PowerShell application designed to allow ad-hoc browsing of OData Services
PowerShell
18
star
42

PowerShellCombinations

Using PowerShell Classes & Script to generate and manipulate combinations and permutations
PowerShell
18
star
43

PSPx

PowerShell module that can execute scripts written in markdown that can be accessed either locally or via a URL
PowerShell
17
star
44

PSYamlQuery

PowerShell wrapper for `yq`, enables a better PowerShell pipeline experience
PowerShell
16
star
45

SharePowerShell

Easily share (and get) PowerShell Scripts from ISE or the command line!
PowerShell
15
star
46

PowerShellCheatSheets

15
star
47

PowerShellConsole

Create a PowerShell Console using the AvalonEdit control
C#
14
star
48

PowerShellGemini

PowerShell integration for Google's versatile Gemini Pro API
PowerShell
14
star
49

PSDuckDB

PSDuckDB is a PowerShell module that provides seamless integration with DuckDB, enabling efficient execution of analytical SQL queries directly from the PowerShell environment.
PowerShell
14
star
50

openai-powershell-samples

Jupyter Notebook
13
star
51

SortingAlgorithms

Sorting in PowerShell
PowerShell
12
star
52

PowerShellAI.Functions

PowerShell module bridging PowerShell functions and OpenAI
Jupyter Notebook
12
star
53

PowerShellPhantomJS

PowerShell over PhantomJS, a headless WebKit scriptable with a JavaScript API
PowerShell
12
star
54

WebScraping

PowerShell
11
star
55

PowerShellASTDemo

PowerShell - Showing Tokenization and the Abstract Syntax Tree
PowerShell
11
star
56

PSJsonTerm

PowerShell UI for exploring and querying JSON
PowerShell
10
star
57

PowerShellJsonObject

PowerShell
10
star
58

PowerShellArrayMethods

Use PowerShell's Extended Type System and Ruby language methods
PowerShell
10
star
59

config-ps

Write your .NET configuration files in PowerShell
C#
10
star
60

PowerShellKV

A key value store that allows you to save snippets of text that you can later find and copy to your clipboard
PowerShell
10
star
61

PasteJSONasPowerShell

Converting your JSON objects into PowerShell functions
PowerShell
10
star
62

SimplePSHttpServer

Simple PowerShell Http Server
10
star
63

dfinke.github.io

https://dfinke.github.io/
Ruby
10
star
64

PowerShellExcel-Snippets

Contains the code snippets for PowerShell Excel development in the VS Code editor
PowerShell
10
star
65

GPT-FunctionCalling

Jupyter Notebook
9
star
66

NPMTabCompletion

Enables tab completion for npm commands
PowerShell
9
star
67

PowerShellScaffold

Quickly create a suite of PowerShell functions
PowerShell
8
star
68

PSPulumi

PowerShell module for Pulumi: Program the Cloud
PowerShell
8
star
69

PowerShell_Roslyn_Code_Quoter

PowerShell Roslyn Code Quoter Tool - generating syntax tree API calls that result in a given C# program.
PowerShell
8
star
70

PowerShellSlackathon

Stupid ideas for the PowerShell Slackathon
PowerShell
7
star
71

known-calendar

PowerShell wrapper for nChronic, a natural language date/time parser
PowerShell
7
star
72

PowerShellContextSplit

The Invoke-ContextSplit command copies the specified file and separates the copy into segments.
PowerShell
7
star
73

PSRunFromZip

PowerShell script to deploy Azure Functions from the command line using Run-From-Zip
PowerShell
7
star
74

PowerShellTools

Collection of PowerShell modules and scirpts to make things simpler
PowerShell
7
star
75

PoShDotNet

.NET Core PowerShell wrapper for dotnet
PowerShell
7
star
76

PowerShellAylien

PowerShell Module to interact with AYLIEN Text Analysis API - a package consisting of eight different Natural Language Processing, Information Retrieval and Machine Learning APIs that can be adapted to your processes and applications with relative ease
PowerShell
7
star
77

SpellingCorrector

PowerShell Spelling Corrector
PowerShell
6
star
78

PSSpeak

HTML
6
star
79

PowerShellSequenceUtils

Jupyter Notebook
6
star
80

SlackDSCResource

PowerShell Slack DSC Provider lets you send messages to Slack
PowerShell
6
star
81

PSGitHubCLICrescendo

PowerShell
5
star
82

VSCETabCompletion

Enables tab completion for vsce commands
PowerShell
5
star
83

powershell-azure-function-stockdata

PowerShell Azure Function for displaying stock information
PowerShell
5
star
84

PowerShell_Highlighter

Reads a PowerShell Script, writes it to the screen and color encodes it
5
star
85

PowerShellTranslate

PowerShell Invoke-Translate and New-TranslationTable typically used in substitution ciphers
PowerShell
5
star
86

StartPowerShellDemo

Start PowerShell demo from a Markdown file
PowerShell
5
star
87

PowerShell_Search_Bing

PowerShell function to interact with the new Bing Web Search API on Azure
PowerShell
5
star
88

GetBingPics

PowerShell script for searching and downloading images from the Bing API
PowerShell
5
star
89

HtmlPageFromPowerShellAzureFunction

PowerShell
5
star
90

PSCargoCompletion

PowerShell - Two for one. Auto complete for ruts's 'cargo' command and the script that does the code generation for it
PowerShell
5
star
91

PowerShellISE

A PowerShell module that lists all the ISE shortcut keys
PowerShell
4
star
92

PSGitQL

A PowerShell git query language
PowerShell
4
star
93

PowerShellNancy

PowerShell using the Nancy framework for building HTTP based
PowerShell
4
star
94

vscode-PSStackoverflow

From VS Code Search for selected text + the PowerShell tag on Stack Overflow
TypeScript
4
star
95

BladePS

Implementation of mustache.js for PowerShell
PowerShell
4
star
96

powershell-azure-function-mashup-dad-jokes-cat-pics

Powershell Azure Function Mashup - Dad Jokes and Cat Pics
PowerShell
4
star
97

PowerShell_And_Microsoft_Roslyn

Integrating PowerShell and Roslyn,the next generation of language object models for code generation, analysis, and refactoring
4
star
98

PowerShellShorts

PowerShell
3
star
99

AzureFunctions

PowerShell module for Azure Functions
PowerShell
3
star
100

PSGistIT

Create Github gists of files using one single command, Export-Gist
PowerShell
3
star