diff --git a/ImportExcel.psm1 b/ImportExcel.psm1 index 2df9e40..ac985f8 100644 --- a/ImportExcel.psm1 +++ b/ImportExcel.psm1 @@ -10,6 +10,7 @@ Add-Type -Path "$($PSScriptRoot)\EPPlus.dll" . $PSScriptRoot\Get-XYRange.ps1 . $PSScriptRoot\Charting.ps1 . $PSScriptRoot\New-PSItem.ps1 +. $PSScriptRoot\Pivot.ps1 function Import-Excel { param( diff --git a/Install.ps1 b/Install.ps1 index 874dc6a..709fe78 100644 --- a/Install.ps1 +++ b/Install.ps1 @@ -1,6 +1,6 @@ param([string]$InstallDirectory) -$fileList = echo EPPlus.dll ImportExcel.psd1 ImportExcel.psm1 Export-Excel.ps1 New-ConditionalFormattingIconSet.ps1 Export-ExcelSheet.ps1 New-ExcelChart.ps1 Invoke-Sum.ps1 InferData.ps1 Get-ExcelColumnName.ps1 Get-XYRange.ps1 Charting.ps1 New-PSItem.ps1 +$fileList = echo EPPlus.dll ImportExcel.psd1 ImportExcel.psm1 Export-Excel.ps1 New-ConditionalFormattingIconSet.ps1 Export-ExcelSheet.ps1 New-ExcelChart.ps1 Invoke-Sum.ps1 InferData.ps1 Get-ExcelColumnName.ps1 Get-XYRange.ps1 Charting.ps1 New-PSItem.ps1 Pivot.ps1 if ('' -eq $InstallDirectory) { diff --git a/Pivot.ps1 b/Pivot.ps1 new file mode 100644 index 0000000..c81b286 --- /dev/null +++ b/Pivot.ps1 @@ -0,0 +1,21 @@ +function Pivot { + [CmdletBinding()] + param( + $targetData, + $pivotRows, + $pivotData, + [OfficeOpenXml.Drawing.Chart.eChartType]$ChartType="Pie" + ) + + if(!$pivotData) {$pivotData=$pivotRows} + + $xlFile = [System.IO.Path]::GetTempFileName() -replace "tmp","xlsx" + Write-Verbose $xlFile + + $targetData | + Export-Excel -Path $xlFile ` + -IncludePivotTable -IncludePivotChart ` + -PivotRows $pivotRows -PivotData $pivotData ` + -ChartType $ChartType ` + -Show +} \ No newline at end of file