Python 自动化 Excel ?这15个技巧要会!

优采云 发布时间: 2022-05-09 05:25

  Python 自动化 Excel ?这15个技巧要会!

  Python是一种了不起的编程语言。它更容易学习和适应。python中的错误消息是可以很好理解的。我们不需要花费数小时来找到错误消息的解决方案。这就是为什么我喜欢这种编程语言。

  我认为这应该是理想的编程语言。编程语言的目标应该是帮助我们构建令人兴奋的产品,而不是在解决错误上浪费时间。

  最近,我学习了如何使用python自动化excel任务。我想和更多的朋友分享这些神奇的技巧。你可以使用自己选择的代码编辑器。在本文中,我将使用Jupyter笔记本进行演示。

  1、安装所需的库

  我们需要安装一个python库openpyxl。在命令提示符中键入以下命令。

  pip install openpyxl<br />

  2、加载现有工作簿

  如果您有一个现有的excel工作簿,并且希望从特定的工作表中读取数据或将数据修改到任何工作表中,则openpyxl提供了一个名为 load_workbook() 的函数,可按如下方式使用。

  from openpyxl import Workbook, load_workbook<br />wb = load_workbook('my_demo_sheet.xlsx')<br />

  

  3、访问工作表

  如果要访问活动工作表中的内容。然后工作簿有一个名为active的属性,可以帮助我们指向活动工作表。

  ws = wb.active<br />print(ws)<br />

  但是,如果你想指定其他的 sheet,我们可以这样做。

  在这里,我从我的excel表访问sheet2。

  ws = wb["Sheet2"]<br />

  4、访问单元格值

  一旦定义了工作表,就可以引用工作表中的任何单元格。

  cell_to_access= ws['A5']<br />

  为了得到单元格的值,我们必须使用value属性。

  cell_value = ws['A5']<br />

  

  5、更改单元格的值

  我们可以使用下面的代码行来更改excel表中的任何值。

  ws['B1'].value="Second Tab"<br />

  

  我们还需要保存更改,如下所示。

  wb.save("my_demo_sheet.xlsx")<br />

  6、获取 sheet 名称

  如果您想知道工作簿中可用工作表的名称,可以使用下面的python代码行在列表表单中获取工作表的名称。

  print(wb.sheetnames)<br />

  

  7、访问其他 sheet

  使用.active属性,我们可以访问默认的活动工作表。如果您想访问另一个工作表,那么我们可以按以下操作:

  ws = wb["summary"]<br />

  8、创建新sheet

  要在同一excel工作簿中创建新工作表,可以使用 create_sheet(),如下所示。在修改工作表时,我们需要保存工作簿以将更改应用到excel工作簿。

  wb.create_sheet("Index_sheet")<br />wb.save("test1.xlsx")<br />

  

  9、创建新工作簿

  创建一个新的Excel工作簿非常简单。我们需要调用函数Workbook()。由于这是一个新工作簿,我们需要将工作表设置为默认工作表。我们还可以使用title属性更改工作表的名称。

  wb = Workbook()<br />

  定义默认图纸

  ws = wb.active<br />ws.title = "Demo_data"<br />

  10、向工作表中添加数据

  一旦定义了工作表,就可以使用append函数添加数据。这将按行添加数据。

  ws.append(["This","Is", "A", "Header"])<br />ws.save("New_WB.xlsx")<br />

  

  11、添加新行

  我们可以使用insert_rows()添加任意数量的行。此函数以行号作为输入。

  for i in range(2):<br />    ws.insert_rows(row_num)<br />

  12、删除行

  我们可以使用delete_rows()函数删除任何行。此函数以列号作为输入。

  for i in range(3):<br />   ws.delete_rows(col_num)<br />

  13、添加新列

  如果要插入任何列,那么insert_cols()函数可以使用循环添加任何列。此函数以列号作为输入。

  ws.insert_cols(column_number)<br />

  14、删除列

  若要删除任何列,可以使用delete_cols()函数,将列号作为输入。

  ws.delete_cols(column_number)<br />

  15、在excel工作表中移动数据

  假设您有一个包含数据的excel工作表,并且希望将行或列的任何部分移动到另一个位置。

  

  我们可以使用move_range()来移动数据。此函数接受三个参数—选定的数据、要移动的行数(+N,-N)和要移动的列数(+N,-N)。

  ws.move_range("B2:D9", rows=0, cols=2 )<br />

  

  结论

  本文到此为止,我们讨论了自动化 excel 任务的不同场景。这些任务也可以在excel中手动完成。但是,如果有一些重复的场景,可以根据需求在这个自动化策略上投入一些时间来节省日常时间。

  精选文章

  腾讯课堂 | Python网络爬虫与文本分析<br />B站视频 | Python自动化办公语法最简单的微博通用爬虫weibo_crawler<br />发布一个智能解析算法库<br />hiResearch 定义自己的科研首页<br />大邓github汇总, 觉得有用记得starmultistop ~ 多语言停用词库Jaal 库 轻松绘制动态社交网络关系图SciencePlots | 科研样式绘图库使用streamlit上线中文文本分析网站爬虫实战 | 采集&可视化知乎问题的回答Clumper | dplyr式的Python数据操作包<br />Clumper库 | 常用的数据操作函数<br />Clumper库 | Groupby具体案例用法<br />Clumper库 | 其他数据分析<br />plydata库 | 数据操作管道操作符>>plotnine: Python版的ggplot2作图库读完本文你就了解什么是文本分析<br />文本分析在经管领域中的应用概述  综述:文本分析在市场营销研究中的应用<br />plotnine: Python版的ggplot2作图库Wow~70G上市公司定期报告数据集<br />漂亮~pandas可以无缝衔接Bokeh  YelpDaset: 酒店管理类数据集10+G 

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线