怎样将 Excel 中的数据快速提取到 Word 当中?
写在前面:本次分享出的内容,您真的非常值得研究。
对于将Excel里面的内容传送至Word的办法,大部分可能都知道用“邮件”的合并功能。实际上,办法不止这么一个,其实,还有好几种,那么现在就来介绍其中一种。
本次内容,主要针对那些像我一样经常需要写分析报告的人。此部分人的工作流程特点是:在EXCEL里面做好数据分析,然后再把这些内容搬到Word里面,形成最终的文字性报告。
常规的做法是把形成的分析数值复制,然后粘贴到Word报告的对应位置。这其实,没什么,都是常规的操作,谁不是这样呢?但这样有个问题,那就是如果数据有所变动,那么就特别头疼,必须逐一去报告里面修改数据。有没有一劳永逸的办法呢?当然有,以下就是我的做法。
这里有个前提条件是,你必须在WPS里面来操作。因为Word里面没法完成,如果有人有兴趣,可以去Word里面试试,你就知道为什么不行了。话不多说,以下就是过程。
1、用WPS打开数据表以及报告文本,复制数据,这里我先复制表里面“管理费用”的金额。
2、在对应位置进行“选择性粘贴”操作,具体如下图:
①第一步
②第二步
③第三步
3、以此类推,复制、粘贴其它数据到报告中对应的位置即可。
4、最终呈现的结果如下,当表格里面的数据变动,报告里面的数据也会同步变动
2018年上半年费用各项指标如下:管理费用:567,821.22元,同比变动15.95%
销售费用:457,010.00元,同比变动12.83%
5、如果感觉在报告里面用表格来表示要更为直观一些,那么你也可以直接把表格复制过来,这样报告里面的表格数据也会同步变动。但表格的复制需要注意的是:在选择性粘贴过程中要按照如下选择:
以上就是基本操作内容,细致的地方就不做过多深入描述了,反正也不复杂。另外,在WPS里面做完后,即使用Word打开也一样可以同步数据。也就是说,在设计阶段需要在WPS里面完成,而最后实际使用阶段的话无所谓了。后期只需要变更表格数据即可,只要报告模板不变,那么你可以使用上万年。
该办法特别适合那些做预算、审计、分析的人。这种办法除了不需要因为数据变动而去频繁的修改报告之外,更不担心报告中的数据会出错。
犹记得本人当年刚毕业时做财务分析报告,经常因为数据变动不停的修改,经常性的加班。加班也就算了,更恼火的是因为报告数据录入有误,复核时未被发觉,而被领导劈头盖脸的骂的日子!!
因此,我希望通过我的努力和探索,尽量不让类似的事情发生在大家身上。换一个思路、换一种方法,眼前可能更开阔。此外,就该问题而言,办法还有很多个,这只是其中之一。如果希望用VBA向Word模板直接输出数据的,那么可以参看我的以下文章:
往期实用内容
郭大牛:根据EXCEL数据自动生成WORD文档
郭大牛:使用Excel自动批量发送邮件
郭大牛:怎样快速的将EXCEL表格数据拆分成多个文件?
郭大牛:Excel向Word输出复杂图文
郭大牛:Excel中一个被严重忽视的大杀器功能
郭大牛:打造Excel与微信之间的交互渠道
郭大牛:VBA实现高级筛选
郭大牛:无边界办公——远程虚拟应用架构
郭大牛:无边界办公——WebDAV文件共享服务构建
郭大牛:无边界办公—内网穿透
郭大牛:Excel树形多级下拉菜单的应用
郭大牛:巧用数据验证制作模糊匹配的下拉列表
郭大牛:使用VBA自动生成文件目录制作文件管理系统
郭大牛:使用Excel来制作批命令完成重复工作
郭大牛:将数字金额转换为中文大写金额的方法
郭大牛:Excel多级下拉菜单制作
郭大牛:使用Access制作一个简单的收款管理及票据打印系统方法
郭大牛:怎样使用最简单的办法实现中小企业的数据共享和办公协同?
郭大牛:一个基于Access构建的数据管理平台
郭大牛:基于EXCEL的条形码制作工具
郭大牛:基于EXCEL的财务数据查询工具
郭大牛:用友打印设置
怎样把Excel的数据转移到word里?
复制粘贴?
--
数据量大的话↓
将excel另存为html,
然后在word中打开该文件
怎样把excel表复制到word中?
Excel表格转Word,其实很简单,把excel文件保存为【网页】的格式,再导入word就可以了。
具体的操作步骤如下。
第一步:
在Excel里点击【文件】-【另存为】,在【文件类型】中选择【网页】进行保存。
如果弹出一个新窗口提醒:”如果另存为【网页】,该工作簿中的部分功能可能会丢失“
(因为Html是静态网页,如果你的文件中带有按钮跳转、色条颜色变换、刷新自动计算等,效果可能会无法呈现,不过这些我们可以在导入word之后再调整)
所以我们选择【是】就可以了。
第二步:
打开Word,点击【文件】-【打开】,找到相应文件夹中的Html格式文件【个人简历】。
又出来一个弹窗:”网页里的某些文件不在预期的位置“
也就是提醒你排版可能不匹配,但没关系,按【是】就可以了。
接下来就是调整排版的问题啦!
第三步:
把【个人简历】导入后,选择【表格布局】-【自动调整】-【适应窗口大小】。
工作栏有两个布局,记得选右边那个,它是属于表格布局。
如果像我一样怕麻烦,也可以活用搜索。
这时你会发现,简历被整体往左挪动,平铺在整个文档当中,全部文字和图片内容都被拉长了。
效果如下:
如果你觉得还是不合你心意,可以点击表格最左上方的小按钮进行调整。
调整的时候它会进行整体地移动,无论在表格的哪里添加字体,表格和文字都在对齐的位置。
就不必担心格式再次乱码了。
如果你觉得在excel里没有调好间距,在word里也可以进行调整。
表格始终都会保持好,左右大小也不会发生错位的现象。
excel表格转word就完成啦,学会后就不需要大费周章地做两份文件,无论领导需要什么格式都能在3秒之内拿出手
如果还想学习更多office技巧,欢迎关注我或【简知office职场课】公/众/号,每周定期为你分享更多更专业的office办公技巧~
怎样把excel表复制到word中?
如果word中有表格,只需要把数据粘过去,可以粘贴为单元格。如果word中没有表格,在文字中需要插入一个表格做说明,最好还是粘贴为图片。直接粘贴表格嘛,你懂的
怎样把Excel的数据转移到word里?
一栋公寓大几千人,一个个复制粘贴不得累死。
我模拟了一份数据:
数据均使用「浅北表格助手」随机模拟一顿操作后的表格是这样的:
有两种做法,一种是用数据透视表及一些简单的公式,操作简单,但步骤比较多,另外一种则是通过VBA循环完成,学习周期较长,但理解起来比较简单。
问题分析
从数据及现实情况来看,一个班级的学生会分布在多个不同的宿舍,而一个宿舍也有可能有多个不同班级的学生,是多对多的数据。
而要想从基于宿舍制作的表格转换为基于班级制作的表格,其中的联系项就是学生。
那么,我们可以通过批量拆分合并单元格填充身份列,将这张表转换为标准的一维表,每一行就是一条数据:
这个表格可以分为两部分,一部分是班级与宿舍的关系,另外一部分是宿舍与各个成员之间的关系。
接下来,分享两种实现方法:
方式一:手动操作
上面说过,班级与宿舍分配是多对多问题,因此,只有班级与宿舍都相同,才可以算作同一数据,因此,要做的就是对宿舍及班级的合并去重。
可以使用数据透视表完成:
有了班级与宿舍的对应关系,接下来,就是宿舍与各个成员的对应关系了。
宿舍舍长与其联系方式比较容易获得,因为舍长是与宿舍绑定的,不用考虑是哪个班级,同样使用数据透视表并筛选:
有了这张表,我们使用VLOOKUP函数就可以获取所有关于宿舍长的信息:
接下来,就是舍员信息,同样使用数据透视表,可以获得如下数据:
注意使用「不重复项目标签」的表格型数据透视表,下面才可以进行筛选。
但我们发现,这里的数据是按列排的,而要生成的表格是逐行排列的,因此,我们可以利用空白单元格的意义(上一条数据中的宿舍与此条数据的宿舍相同),实现错位提取:
当然,由于每个宿舍最多容纳4人,刨除舍长,最多还有3名舍员。如果有更多舍员的话,请参考“三”这一列的公式,同时需要判断左侧单元格不能为空,否则就表示此宿舍已无其他成员,不要再向里填写舍员姓名,这个姓名是其他宿舍的成员。
到这里,我们筛选一下,就可以获得舍员与宿舍的对应关系了:
这里有个0,暂时不用管,我们最后处理。
接下来,同样,使用VLOOKUP函数,将宿舍与对应的舍员拼接在一起:
最后,将全表的公式都转换为值,并将舍员数据中的“0”替换为""即可(勾选单元格匹配)。
那么,这就是我们最终的效果了:
如果你需要合并数据相同的单元格,可以利用数据透视表完成,或者使用「浅北表格助手」中的功能(获取方法见文末):
方法二:VBA循环
VBA对这种数据批量处理很好用,理解起来比较简单,也不用记一些奇技淫巧的功能,一个个数据查找就可以。
这里简单说下处理的逻辑,先把不同班级不同宿舍的信息找出来,再根据每一个学生所在的宿舍及该成员的身份做遍历,填写在相应的位置即可。
代码也贴出来了,有注释,不懂的可以联系我:
Sub纯循环解决() DimdShtAsWorksheet,oShtAsWorksheet SetdSht=Worksheets("数据表") SetoSht=Worksheets("现表") Const数据表开始=2,数据表结束=24,现表开始=2 Const现表序号="A",现表班级="B",现表宿舍="C",现表舍长="D",现表舍长电话="E",现表舍员="F" Const数据表宿舍="A",数据表姓名="B",数据表班级="C",数据表电话="D",数据表身份="E" Const舍长="舍长",舍员="舍员" Const总行数=65536'如果数据行数超过,请修改此参数为1048576 DimiAsLong,jAsLong '填充宿舍&班级信息 Fori=数据表开始To数据表结束 DimflagAsBoolean'匹配的宿舍&班级 flag=False'如果没找到返回初始值False Forj=现表开始TooSht.Range(现表班级&总行数).End(xlUp).Row IfdSht.Range(数据表班级&i).Value=oSht.Range(现表班级&j).ValueAnd_ dSht.Range(数据表宿舍&i).Value=oSht.Range(现表宿舍&j).ValueThen flag=True ExitFor EndIf Next IfNotflagThen '如果没找到对应的宿舍&班级,则创建 '此时j已经是最下方的空单元格的行号了,可以直接使用 oSht.Range(现表班级&j).Value=dSht.Range(数据表班级&i).Value oSht.Range(现表宿舍&j).Value=dSht.Range(数据表宿舍&i).Value oSht.Range(现表序号&j).Value=j-现表开始1 EndIf Next '这遍填充姓名等信息 Fori=数据表开始To数据表结束 Forj=现表开始TooSht.Range(现表班级&总行数).End(xlUp).Row IfdSht.Range(数据表宿舍&i).Value=oSht.Range(现表宿舍&j).ValueThen IfdSht.Range(数据表身份&i)=舍长Then oSht.Range(现表舍长&j).Value=dSht.Range(数据表姓名&i).Value oSht.Range(现表舍长电话&j).NumberFormatLocal="@"'设置为文本格式 oSht.Range(现表舍长电话&j).Value=dSht.Range(数据表电话&i).Value Else DimkAsLong:k=0 DoWhile1 IfoSht.Range(现表舍员&j).Offset(0,k).Value=""Then oSht.Range(现表舍员&j).Offset(0,k).Value=dSht.Range(数据表姓名&i).Value ExitDo Else k=k1 EndIf Loop EndIf EndIf Next Next EndSub
- 上一篇: 【已回答】梦幻西游网页版积分兑换什么划算?
- 下一篇: “王者荣耀掉线”,王者荣耀老掉线怎么回事?