中企动力 > 商学院 > excel合并图表
  • ?

    如何把几个excel表格的内容合并到同一个表格里面?

    听莲

    展开

    把几个excel表格的内容,合并到同一张表格里面,如何操作?看小编给你演示。

    第一步:把需要合并的表格放在同一个文件夹里面,然后再新建一个excel,如图:

    第二步:打开“新建Excel2007”,鼠标右键单击Sheet1,选择“查看代码”并打开进去。

    第三步:将下列代码粘贴进代码栏:

    Sub 合并当前目录下所有工作簿的全部工作表()

    Dim MyPath, MyName, AWbName

    Dim Wb As Workbook, WbN As String

    Dim G As Long

    Dim Num As Long

    Dim BOX As String

    Application.ScreenUpdating = False

    MyPath = ActiveWorkbook.Path

    MyName = Dir(MyPath & "\" & "*.xls")

    AWbName = ActiveWorkbook.Name

    Num = 0

    Do While MyName <>""

    If MyName <> AWbName Then

    Set Wb = Workbooks.Open(MyPath & "\" & MyName)

    Num = Num + 1

    With Workbooks(1).ActiveSheet

    .Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

    For G = 1 To Sheets.Count

    Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)

    Next

    WbN = WbN & Chr(13) & Wb.Name

    Wb.Close False

    End With

    End If

    MyName = Dir

    Loop

    Range("B1").Select

    Application.ScreenUpdating = True

    MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

    End Sub

    第四步:点击菜单栏的“运行”、“运行子子过程/用户窗体”,等待几秒后提示合并完成,点击确定。如图:

    完成,这样就把3个表格的内容合并到同一张表格里面。

    好了,如果觉得小编文章不错,欢迎关注、点赞、收藏。

  • ?

    实用简单的Excel图表设计妙招,组合图表好轻松,工作上档次

    忧深

    展开

    HELLO大家好,我是帮帮,又要到周末啦。今天再给大家是讲讲Excel的图表设计,图表的组合应用。演示版本office2016。

    前两天讲了如何由表格数据生成图表,新来的小伙伴可以看看我前两天的教学。

    点击图表区域,在设计选项卡中,选择快速布局,可以快速调整图表布局效果。我们选择其中一个,将数去区域显示在图表下方。

    点击左侧坐标轴,可以调整修改数值大小。以及单元显示,最有用的就是对比刻度。

    统计部门做表给领导过目,有时候为了让数据别那么“醒目”,对比明显,我们就可以玩玩数学游戏。

    将对比刻度基准进行调整,大家看,我选择输入10。各部门的柱形图看起来是不是很“平均”了。。。掩护队友的好帮手。

    基准可以书写2-1000的数字区间,大家可以根据需求填写合适的数值,毕竟大家好才是真的好。。

    好了,对于表格组合又是什么概念呢?比如我们在原表的基础上,增加显示1,2,3月的指标,怎么做呢?拖动数据区域,将所有的数据全部生成图表,大家注意统计比例,统计方式的问题,可以适当的横竖转换。

    右键图表,选择更改图表类型。

    选择最下方的组合,将1,2,3月的数据柱形图显示,1,2,3月的指标用曲线图显示,点击确定。

    大家看,这就是成图效果,不满意还可以微调微调。。。我的脑细胞死完了,越调越难看。。。大家凑合看着,方法就是这样设置的,希望大家都比我做得好:)

    好了,今天就教学分享就到这里啦,希望大家喜欢噢。(这个周末我一定要睡到天荒地老,此志不渝!)

    【如果大家喜欢帮帮,请点击文章末尾的了解更多或推广广告,在里面找到并关注我,我给表亲们准备了更多更实用的办公软件技巧,一定要来唷^^】拜拜,下课!

  • ?

    惊!这竟然是用Excel做的图表!

    疯子

    展开

    春光明媚,连带着小心情也开始发芽了~变成了彩色的~

    马上要到踏春的日子了,这不,连Excel也开始色彩斑斓了起来~

    本期话题,来自@悠悠静漪 小伙伴,目标是制作出网易上,这样的多彩条形图。

    特别鸣谢小伙伴,发现美,并且整理了基础数据源,也就有了本番的教程。

    关键知识点:条件格式

    数据源整理

    对照网易数据的数据源@悠悠静漪小伙伴将网页中的内容,整理成以下Excel表格:

    很舒爽,有木有~~完美的数据源格式:

    1.标题行字段清晰

    2.数据源没有合并单元格,数据格式正确

    3.数据源还有ID(序号)列

    是的,这就是表姐一直强调的,数据源“二清合二白”的完美体现。

    Excel的数据源和真正的做图数据源,还是有区别的。比如,图表展示的位置,需要用合并单元格的方式,将标题内容,进行纵向排列:

    在标题单元格,我们设置了:

    合并单元格的效果

    文字的方向为纵向

    设置了自动换行的效果

    单元格内用【ALT+回车】设置强制换行

    背景色设置

    根据网易数读中图示的情况,用取色器,将各类颜色拾取出来:

    取色器:

    在PPT2013和2016中,已经自带了取色神器。然而,不得不吐槽一下微软爸爸,这么好用的功能,居然没有放到Excel当中。好在咱们有一款,取色神器:color Pix,超级好用的轻量级取色器。

    使用方法:

    1.在上图软件窗口中,我们可基本看到软件中的所有功能,就如工具栏中的“+”、“-”、“X”分别代表着总在最前面、最小化、关闭。

    2.用户在运行软件后,当鼠标在桌面任意位置移动时,软件窗口中的数值是随着自动变化的,这也就是说,当我们运行软件后,即可立即提取桌面颜色;所需要提取的颜色数值,我们在软件窗口左侧即可看到。

    3.取色点确定之后,敲击任意键(如:空格)可以锁定该点色彩,便于将光标移动到信息区也用于复制代码。前提是,ColorPix 的程序主窗口处于激活状态,而不仅仅是显示在最前。

    4.ColorPix 放大镜模式:单击主窗口左下方的放大镜按钮或提示激活放大镜视图,以便精准的定位复杂颜色区域的某一像素。放大倍率可在 100% 、200%、 300% 、400% 、500% 、600% 、1200% 、2800% 中调节。(说明:高倍放大对于鼠标操作没有实际意义,因为放大镜视图中的抖动会很严重。)

    通过ColorPix工具的使用,我们能够快速参考并读取到任意颜色的色值,并将它们用于我们的商务图片配色中。

    应用配色方案:

    Excel中图表元素颜色的更改方法是:选中目标后,单击【开始】选项卡下填充颜色中的【自定义填充】,选择【其他颜色】:

    在弹出的【颜色】对话框中选择【自定义】选项卡,【颜色模式】选择【RGB】,将【红色】、【绿色】、【蓝色】的色值更改为【取色器】所读取的数值,然后单击【确定】按钮即可。

    通过取色神器和单元格填充颜色的设置,我们可以完成基础图表的准备工作。注意,在单元格边框的位置,我们可以设置,下边框为:深色、加粗、虚线的效果:

    数据条美化

    做好基础数据表格的填充颜色与美化后,选中每个色块的数据内容,如:C2:C6(每段数据,都要分别点击,单独设置)

    通过点击【开始】选项卡--【条件格式】--【数据条】--【其他规则】:

    打开【新建格式规则】对话框--将条形图的外观--设置为之前用取色器取到的目标颜色,如:深蓝色。设置完成后,点击确定。

    注意:

    1.条件格式--数据条的设置,是根据单元格内数值的大小,在单元格内嵌一个数据条的效果。所以它能够随着单元格数值的大小,实时变化。

    2.为了统筹各个模块的数据条呈现在同一标准之下,需要为每组纵向的数据(即满意程度)构建一个统一的恒定标准,也就是最大值是多少。

    3.为了美观,每个横向系列中,都要分批次使用条件格式,来设置数据条效果。

    来源:E维课堂,作者:表姐凌祯

    提高桌面生产力

    如果您期待系统学习Excel技能,系统化提高个人财务工作效率,不妨让表姐凌祯一对一来教你!

    EXCEL财务技巧初级到高级实战密训班:

    看实例听干货学做表(第七期)

    案例式教学,定制化服务,实战型技能

    8节直播课,就能把你从EXCEL菜鸟培养成大师!

    并赠合并多工作表及图表

    五一拼团价仅需128元

    如此优惠仅剩最后一天,赶紧来~

    ▼如何购买?戳原文吧!

  • ?

    Excel多表合并技巧——帮你解决多张表格数据合并的烦恼!

    马风华

    展开

    在日常工作中,经常需要将相似结构或内容多个表格进行合并汇总。当数量庞大时人工进行计算比较繁琐,工作量大且易犯错,使用Excel中的“合并计算”功能可以轻松完成这项任务。

    合并计算的数据源可以是同一工作表中的不同表格,也可以是同一工作簿中的不同工作表,还可以是不同工作簿中的表格。现针对第一种情形进行演示说明:

    如图1所示的两个结构相同的数据表“表一”和“表二”,利用合并计算可以轻松将这两个表格进行合并,具体步骤如下。

    图1 原始表

    步骤1选中B10单元格,作为合并计算后结果的存放起始位置,再单击【数据】选项卡【数据工具】命令组的【合并计算】命令按钮,打开【合并计算】对话框,如图2所示。

    图2 打开【合并计算】对话框

    步骤2激活【引用位置】编辑框,选中“表一”的B2:D6单元格区域,然后在【合并计算】对话框中单击【添加】按钮,所引用的单元格区域地址会出现在【所有引用位置】列表框中。使用同样的方法将“表二”的F2:H6单元格区域添加到【所有引用位置】列表中。

    步骤3依次勾选【首行】复选框和【最左列】复选框,然后单击【确定】按钮,即可生成合并计算结果表,如图3所示。

    图3 生成合并计算结果表

    注意:

    1.在使用按类别合并的功能时,数据源列表必须包含行或列标题,并且在“合并计算”对话框的【标签位置】组合框中勾选相应的复选框。

    2.合并的结果表中包含行列标题,但在同时选中【首行】和【最左列】复选项时,所生成的合并结果表会缺失第一列的列标题。

    3.合并后,结果表的数据项排列顺序是按第一个数据源表的数据项顺序排列的。

    4.合并计算过程中不能复制数据源表的格式。如果要设置结果表的格式,可以使用【格式刷】将数据源表的格式复制到结果表中。

  • ?

    Excel技巧:多个相同excel表格如何合并到一起!

    李霖

    展开

    从事互联网行业的小编们,经常会遇到一个问题,就是导出多个Excel表格数据,经常是多个数据合并到一个excel表格里来做数据分析,那么如何快速的合并excel表格呢?

    1、把所有excel文件放在同一个文件夹里。如下图:

    2、打开汇总excel,并右键单击sheet1,找到“查看代码”,单击进去。进去之后就看到了宏计算界面。如图所示:

    3、然后我们把下面代码复制进去,然后找到工具栏上面的“运行”下的“运行子过程/用户窗体”,代码如下,如图所示:

    Sub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName, AWbNameDim Wb As Workbook, WbN As StringDim G As LongDim Num As LongDim BOX As StringApplication.ScreenUpdating = FalseMyPath = ActiveWorkbook.PathMyName = Dir(MyPath & "\" & "*.xls")AWbName = ActiveWorkbook.NameNum = 0Do While MyName <> ""If MyName <> AWbName ThenSet Wb = Workbooks.Open(MyPath & "\" & MyName)Num = Num + 1With Workbooks(1).ActiveSheet.Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)For G = 1 To Sheets.CountWb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)NextWbN = WbN & Chr(13) & Wb.NameWb.Close FalseEnd WithEnd IfMyName = DirLoopRange("B1").SelectApplication.ScreenUpdating = TrueMsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"End Sub

    运行几十秒钟就OK啦!如果表格数据过多的话,时间会久一点。

  • ?

    多个excel表格合并汇总,无需公式只要鼠标点点!

    雍映易

    展开

    汇总多个excel表格,一直困绕着很多职场同事,今天介绍的方法,不需要用任何公式就可以轻松完成,只用鼠标点点。

    【例】如下图所示,在一个工作簿中有四个城市的销售表,需要根据这4个表格,用数据透视表进行汇总。

    具体步骤:

    1、按alt+d组合键,松开后再快速按p键。会打开数据透视表向导,在第一步中选取“多重合并计算数据区域”

    2、选取“自定义页字段”

    3、添加区域和设置字段数目及名称

    4、添加所有要合并的表,并分别设置字段数目和名称。

    5、点击完成后,会自动生成数据透视表。把页字段名字由“页1”改为“城市”、“行”改为“产品”。

    更改前:

    更改后

    设置OK!

    接下来就可以通过调整字段位置,来完成不同模式的汇总。

    以城市+产品汇总

    以产品+城市汇总

    数据透视表只能完成表格结构相对简单的合并、而对于列数较多、格式不完全一致的表格进行合并(如由入库表和出库表生成 进销存报表),就需要使用SQL语句合并。|来源: Excel精英培训

    百家号-【袁帅数据分析运营】运营者:袁帅,会展业信息化、数字化领域专家。新社汇平台联合创始人,永洪数据科学研究院MVP。认证数据分析师、网络营销师、SEM搜索引擎营销师、SEO工程师、中国电子商务职业经理人。畅销书《互联网销售宝典》联合出品人。

  • ?

    如何制作精美的Excel数据图表

    Long

    展开

    一个中奖名单的Excel表格,需要打印出来。

    直接打印觉得有点单调,于是兰色添加了图片背景,打印预览面页中是下面这样的:

    是不是觉得很漂亮,下面兰色教你一步步学会添加可打印的背景图片。

    1、插入 - 图片,把准备好的背景图插入到Excel表格中

    2、复制表格,右键 - 选择性粘贴 - 链接的图片

    粘贴后,会出现一张图片式表格,内容和表格完全一样,而且图片中数据可以与表格同步变动。

    3、把粘贴的表格式图片,移动到原背景图上面即可。

    4、选取背景图片大小区域 - 页面布局 - 设置打印区域。

    完成!最终效果如本文开始所示。来源:Excel精英培训

    百家号-【袁帅数据分析运营】运营者:袁帅,会展业信息化、数字化领域专家。新社汇平台联合创始人,永洪数据科学研究院MVP。认证数据分析师、网络营销师、SEM搜索引擎营销师、SEO工程师、中国电子商务职业经理人。畅销书《互联网销售宝典》联合出品人。

  • ?

    EXCEL中原始的图表不好看!怎样制作自己心仪的图表?

    浅笑痕

    展开

    施老师:

    Excel中的原始图表确实不怎么好看,不过,我们可以自己动手对图表进行一番美化。今天宁双学好网施老师就来教教大家如何快速优化你的图表,让你的图表更加的美观!

    开始美化图表

    一、第一步我们先选中数据,创建一个彩色的柱形图图表!

    二、插入一个三角形,然后去掉边线,透明度设为【45%】,多复制几份。

    三、将每个三角形的颜色,设为不同的颜色。

    四、复制不同颜色的三角形,然后粘贴到柱形图里面去,(注意,选中柱形条的时候,一定要选到位,要选中其中一根)。

    五、右键点击柱形条,选中【设置数据系列格式】,调整【系列重叠】与【分类间距】,你可以慢慢调整,慢慢预览,直到你满意为止!

    六、取消显示【坐标轴】和【网格线】;勾选【数据标签】。再设置一下整体的字体样式。最后弄个渐变背景,当然这是根据你自己审美来定。

    大家平时是怎么制作图表的,是使用EXCEL中自带的模型图表吗?还是自己手动创作!

    欢迎在下方评论区留言和施老师一起探讨!请关注宁双学好网施老师。本文欢迎转载与分享,转载或分享请注明出处。

  • ?

    EXCEL中组合图的应用

    劳伦

    展开

    在excel中我们有时候需要将多个图表组合在一起,以便我们更清楚地查看其中的数据。以下面的“成本费用预算表”为例,看看如何应用组合图。

    首先我们插入“簇状柱形图”,选择数据源,设置图例、标题等得到如下图表。

    这时我们发现:图表中没有出现“增减率”的图。因为“增减率”的数据远远小于“上年实际”、“本年预算”的数据,所以在图表中,“增减率”数据不能有效地呈现出来。如何解决?我们想到设置次坐标轴的方法,来显示增减率数据,也即创建组合图来呈现。

    方法:1、选择“增减率”图例项,鼠标右键选择更改图表类型,得到下图所示:

    2、选择次坐标轴“增减率”,图表类型选择“带数据标记的折线图”,下图所示:

    单击确定,组合图创建完毕,最终效果如下:

    “增减率”数据清楚地呈现出来了。

    office微信公众号

    相关链接:

    制作九九乘法口诀表

    频数分析||Excel在统计中的应用

    Word也能制作工资条

    AND、OR、NOT函数使用介绍

    EXCEL中获取外部数据

    15个模式化的EXCEL表格公式

    超简便的个税计算方法

  • ?

    使用Python处理Excel实现读写、合并、样式及图表的功能

    鲍紫霜

    展开

    转载自百家号作者:淘特

    Python语言最近非常火,其丰富的模块支持使得开发软件的效率大大提高。本文我们就学习一下使用openpyxl进行Excel文档相关处理的功能。

    Excel文档

    首先,我们来看一些基本定义:Excel电子表格文档称为工作簿。单个工作簿保存在扩展名为.xlsx的文件中。每个工作簿可以包含多个工作表(也称为工作表)。用户当前正在查看的工作表(或在关闭Excel之前最后查看的工作表)称为活动工作表。

    每个工作表都有列(由A开头的字母寻址)和行(从1开始的数字寻址)。特定列和行的框称为单元格。每个单元格可以包含数字或文本值。具有数据的单元格网格组成一张纸。

    安装openpyxl模块

    Python不附带OpenPyXL,因此您必须安装它。模块的名称是openpyxl。要测试是否正确安装,请在交互式shell中输入以下内容:

    >>> import openpyxl

    如果模块已正确安装,则不应生成错误消息。请记住openpyxl在本章中运行交互式shell示例之前导入模块,否则您将收到NameError: name 'openpyxl' is not defined错误。

    操作步骤

    作为快速理解,这里是从电子表格文件中读取单元格所涉及的所有函数,方法和数据类型的概述:

    1. 导入openpyxl模块。

    2. 调用openpyxl.load_workbook()功能。

    3. 获取一个Workbook对象。

    4. 读取active成员变量或调用get_sheet_by_name()工作簿方法。

    5. 获取一个Worksheet对象。

    6. 使用索引或通过row和column关键字参数调取sheet 中的cell()表方法。

    7. 获取一个Cell对象。

    8. 读取Cell对象的value属性。

    读Excel文档

    本章中的示例将使用存储在根文件夹中的名为test.xlsx的电子表格。您可以自己创建电子表格。图12-1显示了Excel自动为新工作簿提供的名为Sheet1,Sheet2和Sheet3的三个默认工作表的选项卡。(创建的默认工作表数量可能因操作系统和电子表格程序而异。)

    图12-1。excel工作表的选项卡位于Excel

    现在我们有了示例电子表格,让我们看看我们如何使用openpyxl模块来操作它。

    使用OpenPyXL打开Excel文档

    导入openpyxl模块后,您将能够使用该openpyxl.load_workbook()功能。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>>type(wb)

    'openpyxl.workbook.workbook.workbook'>

    openpyxl.load_workbook()函数返回workbook数据类型的对象。

    test.xlsx和程序在一个目录中,如果在其它目录里可以通过导入os模块,使用os.getcwd()获取当前目录,或通过os.chdir()更换目录。

    从工作簿中获取表格

    get_sheet_names()方法获取工作簿中所有工作表名称的列表。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>>wb.get_sheet_names()

    ['Sheet1', 'Sheet2', 'Sheet3']

    >>> sheet = wb.get_sheet_by_name('Sheet3')

    >>>sheet

    >>>type(sheet)

    >>>sheet.title

    'Sheet3'

    >>> anotherSheet = wb.active

    >>>anotherSheet

    上面的代码 一目了然。得到Worksheet对象后可以通过title属性获取它的名称。

    从Sheet中获取cell

    获得Worksheet对象后,可以按名称访问Cell对象。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>> sheet = wb.get_sheet_by_name('Sheet1')

    >>>sheet['A1']

    >>>sheet['A1'].value

    datetime.datetime(2015, 4, 5, 13, 34, 2)

    >>> c = sheet['B1']

    >>>c.value

    'Apples'

    >>> 'Row ' + str(c.row) + ', Column ' + c.column + ' is ' + c.value

    'Row 1, Column B is Apples'

    >>> 'Cell ' + c.coordinate + ' is ' + c.value

    'Cell B1 is Apples'

    >>>sheet['C1'].value

    73

    Cell对象具有一个value属性,该属性包含存储在该单元格中的值。Cell对象还具有row,column和coordinate提供单元格位置信息的属性。

    在这里,访问单元格B1 value的Cell对象属性为我们提供了字符串'Apples'。该row属性为我们提供了整数1,column属性给出了我们'B',coordinate属性给了我们'B1'。

    OpenPyXL将自动解释A列中的日期,并将它们作为datetime值而不是字符串返回。逐个指定列可能很难编程,特别是因为在Z列之后,列开始使用两个字母:AA,AB,AC等。作为替代方案,您还可以使用工作表的cell()方法获取单元格,并为其row和column关键字参数传递整数。第一行或列整数1不是0。输入以下内容继续交互式shell示例:

    >>> sheet.cell(row=1, column=2)

    >>> sheet.cell(row=1, column=2).value

    'Apples'

    >>> for i in range(1, 8, 2):

    print(i, sheet.cell(row=i, column=2).value)

    1 Apples

    3 Pears

    5 Apples

    7 Strawberries

    正如您所看到的,使用工作表的cell()方法并传递它row=1并column=2获取Cell单元格的对象B1,就像指定sheet['B1']did一样。然后,使用该cell()方法及其关键字参数,您可以编写一个for循环来打印一系列单元格的值。

    假设您想要下到B列并在每个具有奇数行号的单元格中打印该值。通过传递2的range()功能的“台阶”的参数,你可以从cell中每隔一行(在这种情况下,所有的奇数行)读取cell中的值。

    您可以使用Worksheet对象max_row和max_column成员变量确定工作表的大小。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>> sheet = wb.get_sheet_by_name('Sheet1')

    >>>sheet.max_row

    7

    >>>sheet.max_column

    3

    请注意,该max_column方法返回一个整数而不是Excel中显示的字母。

    从表格中获取行和列

    您可以分割Worksheet对象以获取Cell电子表格的行,列或矩形区域中的所有对象。然后,您可以遍历切片中的所有单元格。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>> sheet = wb.get_sheet_by_name('Sheet1')

    >>>tuple(sheet['A1':'C3'])

    ((, , ), (,

    , ), (, ,

    ))

    >>> for rowOfCellObjects in sheet['A1':'C3']:

    for cellObj in rowOfCellObjects:

    print(cellObj.coordinate, cellObj.value)

    print('--- END OF ROW ---')

    A1 2015-04-05 13:34:02

    B1 Apples

    C1 73

    --- END OF ROW ---

    A2 2015-04-05 03:41:23

    B2 Cherries

    C2 85

    --- END OF ROW ---

    A3 2015-04-06 12:46:51

    B3 Pears

    C3 14

    --- END OF ROW ---

    在这里,我们截取从A1到C3这一区域的cell。为了帮助我们测试截取的区域是否如设计一样,我们可以使用tuple()函数来展示其中的Cell对象。

    要打印区域中每个单元格的值,我们使用两个for循环。中代码用于遍历行。然后,对于每一行,嵌套for循环遍历该行中的每个列。

    要访问特定行或列中单元格的值,还可以使用Worksheet对象rows和columns属性。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>> sheet = wb.active

    >>>sheet.columns[1]

    (, , , ,

    , , )

    >>> for cellObj in sheet.columns[1]:

    print(cellObj.value)

    Apples

    Cherries

    Pears

    Oranges

    Apples

    Bananas

    Strawberries

    使用对象Worksheet上的rows属性将为您提供元组数组。这些内部元组中的每一个对象都代表一行,并包含该行中的Cell对象。columns属性还为您提供元组数组,每个内部元组包含Cell特定对象列。例如.xlsx,因为有7行和3列,rows给我们一个7元组的数组(每个包含3个Cell对象),columns给我们一个3元组的数组(每个元组包含7个Cell对象)。

    要访问一个特定的元组,您可以通过更大元组中的索引来引用它。例如,要获取表示列B的元组,请使用sheet.columns[1]。要获取包含CellA列中对象的元组,您可以使用sheet.columns[0]。一旦你有一个表示一行或一列的元组,你就可以遍历它的Cell对象并打印它们的值。

    编写Excel文档

    OpenPyXL还提供了编写数据的方法,这意味着您的程序可以创建和编辑电子表格文件。使用Python,创建包含数千行数据的电子表格非常简单。

    创建和保存Excel文档

    调用openpyxl.Workbook()函数以创建一个新的空白Workbook对象。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.Workbook()

    >>>wb.get_sheet_names()

    ['Sheet']

    >>> sheet = wb.active

    >>>sheet.title

    'Sheet'

    >>> sheet.title = 'Spam Bacon Eggs Sheet'

    >>>wb.get_sheet_names()

    ['Spam Bacon Eggs Sheet']

    工作簿将从名为Sheet的单个工作表开始。您可以通过在其title属性中存储新字符串来更改工作表的名称。

    每次修改Workbook对象或其工作表和单元格时,在调用save()工作簿方法之前,不会保存电子表格文件。在交互式shell中输入以下内容(当前工作目录中包含test.xlsx):

    >>> import openpyxl

    >>> wb = openpyxl.load_workbook('test.xlsx')

    >>> sheet = wb.active

    >>> sheet.title ='垃圾邮件垃圾邮件'

    >>> wb.save('test_copy. XLSX')

    在这里,我们更改工作表的名称。为了保存我们的更改,我们将文件名作为字符串传递给save()方法。传递与原始文件名不同的文件名,例如'test_copy.xlsx',将更改保存到电子表格的副本。

    无论何时编辑从文件加载的电子表格,都应始终将新编辑的电子表格保存为与原始文件不同的文件名。这样,如果代码中的错误导致新的,已保存的文件包含不正确或损坏的数据,您仍然可以使用原始电子表格文件。

    创建和删除表格

    可以使用create_sheet()和remove_sheet()方法在工作簿中添加和删除工作表。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> wb = openpyxl.Workbook()

    >>>wb.get_sheet_names()

    ['Sheet']

    >>>wb.create_sheet()

    >>>wb.get_sheet_names()

    ['Sheet', 'Sheet1']

    >>> wb.create_sheet(index=0, title='First Sheet')

    >>>wb.get_sheet_names()

    ['First Sheet', 'Sheet', 'Sheet1']

    >>> wb.create_sheet(index=2, title='Middle Sheet')

    >>>wb.get_sheet_names()

    ['First Sheet', 'Sheet', 'Middle Sheet', 'Sheet1']

    该create_sheet()方法返回一个Worksheet名为的新对象SheetX,默认情况下,该对象设置为工作簿中的最后一个工作表。(可选)可以使用index和title关键字参数指定新工作表的索引和名称。

    输入以下内容继续上一个示例:

    >>>wb.get_sheet_names()

    ['First Sheet','Sheet','Middle Sheet','Sheet1']

    >>> wb.remove_sheet(wb.get_sheet_by_name('Middle Sheet'))

    >>>wb.remove_sheet(wb.get_sheet_by_name('Sheet1'))

    >>>wb.get_sheet_names()

    ['First Sheet','Sheet' ]

    该remove_sheet()方法将Worksheet对象而不是工作表名称的字符串作为其参数。如果您只知道要删除的工作表的名称,请调用get_sheet_by_name()并将其返回值传递给remove_sheet()。

    save()在将工作表添加到工作簿或从工作簿中删除工作表之后,请记住调用该方法来保存更改。

    将值写入单元格

    将值写入单元格就像将值写入字典中的键一样。在交互式shell中输入:

    >>> import openpyxl

    >>> wb = openpyxl.Workbook()

    >>> sheet = wb.get_sheet_by_name('Sheet')

    >>> sheet['A1'] = 'Hello world!'

    >>>sheet['A1'].value

    'Hello world!'

    如果将单元格的坐标作为字符串,则可以像Worksheet对象上的字典键一样使用它来指定要写入的单元格。

    类似程序的想法

    由于许多办公室工作人员一直使用Excel电子表格,因此可以自动编辑和编写Excel文件的程序非常有用。这样的程序可以执行以下操作:

    从一个电子表格中读取数据并将其写入其他电子表格的部分内容。从网站,文本文件或剪贴板中读取数据并将其写入电子表格。自动“清理”电子表格中的数据。例如,它可以使用正则表达式来读取多种格式的电话号码,并将它们编辑为单一的标准格式。

    设置单元格的字体样式

    样式化某些单元格,行或列可以帮助您强调电子表格中的重要区域。例如,在产品电子表格中,您的程序可以将粗体文本应用于马铃薯,大蒜等。或者,您可能希望以每斤超过5元的成本对每一行进行斜体显示。手动设置大型电子表格的部分内容会很繁琐,但您的程序可以马上执行。

    要自定义单元格中的字体样式,请务必从openpyxl.styles模块中导入Font()函数。

    from openpyxl.styles import Font

    这是一个创建新工作簿并将单元格A1设置为具有24磅斜体字体的示例。在交互式shell中输入以下内容:

    >>> import openpyxl

    >>> from openpyxl.styles import Font

    >>> wb = openpyxl.Workbook()

    >>> sheet = wb.get_sheet_by_name('Sheet')

    >>> italic24Font = Font(size=24, italic=True)

    >>> sheet['A1'].font = italic24Font

    >>> sheet['A1'] = 'Hello world!'

    >>>wb.save('styled.xlsx')

    可以通过将Font对象分配给style属性来设置单元格的样式。

    在此示例中,Font(size=24, italic=True)返回Font存储在italic24Font中的对象。关键字参数Font(),size和italic,配置Font对象的属性。...

excel合并图表

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP