前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PowerShell实战:PowerShell使用ImportExcel模块轻松操作Excel

PowerShell实战:PowerShell使用ImportExcel模块轻松操作Excel

原创
作者头像
IT技术分享社区
发布2024-02-10 08:36:45
6160
发布2024-02-10 08:36:45
举报
文章被收录于专栏:运维运维
descript
descript

一、介绍

ImportExcel模块可以理解为基于PowerShell环境操作Excel的强大类库,使用它可以在 Windows、Linux 和 Mac 上都可以使用。创建表、数据透视表、汇总、图表等操作变得更加容易。另外比较好的一点是使用该模块允许用户无需安装微软的 Office 或者使用 COM 对象就能直接操作 Excel 文件,这样对于没有安装office的服务器也可以直接使用。

功能介绍

  • Excel导入:通过 Import-Excel 命令,可以从 Excel 文件中导入数据到 PowerShell 中,转换成可以进一步处理的数据集(通常是以表格形式存在的 PSObject)。
  • Excel导出:利用 Export-Excel 命令,可以直接将 PowerShell 表格格式的数据输出到一个新的或已存在的 Excel 文件中,并且支持添加样式、冻结窗格、设置列宽等高级特性。
  • 支持给Excel添加图表:还可以在 Excel 工作表中创建图表,例如柱状图、折线图等。
  • 数据透视表:能够生成数据透视表并将其写入 Excel 文件中。
  • 合并单元格与公式:支持对单元格进行合并和插入 Excel 公式。
  • 跨平台:ImportExcel 不依赖于 Microsoft Office,可以在 Windows、Linux 和 macOS 上运行 PowerShell 时直接使用该模块。

二、安装模块

https://www.powershellgallery.com/packages/ImportExcel/7.8.4

descript
descript

首先使用管理员运行Power Shell ISE 开发环境。

安装模块ImportExcel命令如下:

Install-Module -Name ImportExcel

注意事项:因为直接访问的是微软的网站,依赖包会比较慢,大概安装需要等几分钟。

三、操作示例

导出excel

脚本文件如下:

# 定义博客排名数据 $BlogRankData = ConvertFrom-Csv @" 博客名称,排名,访问量 CSDN,1,90000000 博客园,2,86000000 51CTO,3,68000000 知乎,4,61000000 掘金,5,49000000 开源中国,6,46000000 简书,7,35000000 "@ # 导出为Excel文件 - Show 参数表示直接打开Excel文件 $BlogRankData | Export-Excel e:\blogRankData.xlsx -Show

把文件保存为psl文件,然后点击运行按钮

descript
descript

输出结果

descript
descript

读取Excel数据

直接用变量名可以输出Excel数据,命令如下:

$BlogRankData

descript
descript

3、导出包含图表的Excel

脚本内容如下:

#定义数据 $BlogRankData = ConvertFrom-Csv @" 博客名称,排名,访问量 CSDN,1,120000000 博客园,2,86000000 51CTO,3,68000000 知乎,4,61000000 掘金,5,49000000 开源中国,6,46000000 简书,7,35000000 "@ # 图表定义 $chart = New-ExcelChartDefinition -XRange 博客名称 -YRange 访问量 -Title "博客访问量统计" -NoLegend # 导出到Excel 包含图表 $BlogRankData | Export-Excel E:\blogRankChatData.xlsx -AutoNameRange -ExcelChartDefinition $chart -Show

需要对图标进行定义,然后导出的时候指定展示图表。

descript
descript

点击运行按钮,直接打开Excel如下

descript
descript

4、导出包含汇总列和图表的Excel

包含 汇总列的话需要增加汇总列表的参数,具体直接看下面的案例:

#定义数据 $BlogRankData = ConvertFrom-Csv @" 博客名称,排名,访问量 CSDN,1,120000000 博客园,2,86000000 51CTO,3,68000000 知乎,4,61000000 掘金,5,49000000 开源中国,6,46000000 简书,7,35000000 "@ # 导出为Excel文件 $BlogRankData | Export-Excel e:\blogRankPivotChatData.xlsx -AutoNameRange -Show -PivotRows 博客名称 -PivotData @{'访问量'='sum'} -PivotChartType PieExploded3D

点击运行按钮

descript
descript

运行效果

descript
descript

总结

以上是Powershell中ImportExcel模块的一些实际用法,大家有问题可以互相交流!

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、介绍
  • 二、安装模块
  • 三、操作示例
    • 导出excel
      • 读取Excel数据
        • 3、导出包含图表的Excel
          • 4、导出包含汇总列和图表的Excel
          • 总结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档