本次的练习是:给定一个单元格区域,要求使用公式得到该区域中出现重复次数最多的数据的重复次数。如下图1所示,在单元格区域A1:F1中,重复次数最多的数据是“完美Excel”,重复次数是3。
还有一个“秘密”就是,也可以在定义的单元格区域名称中使用EVALUATE,因此有一些方法可以在不使用VBA的情况下访问单元格公式中EVALUATE的功能。
写在开头的话:本系列从第133篇开始的22篇文章,都是翻译改编自fastexcel.wordpress.com的Making your VBA UDFs Efficient系列,可能有点高深晦涩,但确实都是好的VBA用户自定义函数编程细节技巧和经验。对于大多数人来说,你可以略过这些内容,因为我们只需懂得基础的VBA用户自定义函数知识就足够了。对于想深入研究VBA的人来说,还是值得研究和试验的。我刚开始看到这些文章的时候,一是水平有限,看不大懂,也觉得没有什么必要,所以一直收藏着。然而,随着自已研究VBA的深入,不由得佩服老外对VBA研究的深入,此时刚好Excel VBA解读系列又写到自定义函数这里,正好拿出来,边研究并翻译分享给大家。如果对这些内容没有兴趣的朋友,可以略过,免得浪费时间。
本节为《Chapter 1:Why Python for Excel?》的第一部分,简单地讲解了Excel的历史,Excel编程的最佳实践,以及Excel为适应发展而作出的变化。 当你每天花费很多时间
这个炫酷的图表仍然来自excelhero.com。正如之前提到过的,通过学习研究复杂的图表制作,无论是否能够完全明白,都会很好地提高我们的Excel绘图能力。
Excel数组公式能够做很多令人惊讶的事情。除了在输入完后要按Ctrl+Shift+Enter组合键外,与普通公式一样。本文主要研究使用用户定义函数的数组公式。
上篇提到如何从Excel界面上拿到用户的数据,另外反方向的怎样输出给用户数据,也是关键之处。
在前面的几篇文章中,我们自定义的函数使用定义为Range的参数来从Excel工作表中获取数据,例如:
于是,我准备把Excel VBA写成一个系列免费教程,撸完这个系列你也是VBA界的黑山老妖了。
Excle中A列是乱序,B列是人名排序,什么函数公式可以让A列根据B列排序,且一一对应?也就是说,如下图1所示,A列是一种排序(A列中每个单元格中有个人名,这个人名对应B列中的人名),B列一种排列顺序,C列的排列顺序要对应B列中的人名(使A列和B列形成一一对应关系),除了复制粘贴可以用什么函数公式得到呢?
VBA还会存在多久?VBA会消失吗?我现在学VBA还来不来得及?什么语言会取代VBA?……这些都是老生常谈的话题,多少年前就有不少人在争论。然而,时至今日,VBA不仅没有消失,而且还活得很好。
https://docs.microsoft.com/zh-cn/office/vba/language/glossary/vbe-glossary#array
Excel里部分人工资调整,要引入到原表中,并保持未调整的人员数据和位置不变,这是典型的部分数据替换问题,若要使得到的结果位置完全不变,通过直接的数据复制粘贴是无法完成的,但可以通过公式或者构建排序参考表来完成,下面先以公式法为例进行说明:
引言:在《Excel公式练习87:返回字符串中第一块数字之后的所有内容》、《Excel公式练习88:返回字符串中第一块数字之后的所有内容(续1)》和《Excel公式练习89:返回字符串中第一块数字之后的所有内容(续2)》中,我们分别给出了解决这个问题的三个公式,本文中,再次尝试着使用另一个公式来解决这个问题。正如之前已提到过的,尝试多种方法解决问题,能够帮助我们快速提高。
类CXML解析xml文本获取XML结构体之后,需要进一步转换为一个二维数组输出到Excel单元格。 同时还需要一个相反的函数,Excel单元格数据转换为XML结构体。 01 XML结构体转换为二维数组 Public Function XML2Array(tXML As XML) As String() Dim arr() As String Dim pcol As Long '记录属性所在的列 Dim h As CHash '注意:这里应该先遍历一次,获取所有不重复属
前言能生成 pandas 代码的数据浏览工具工具安装加载数据直觉理解运行机制进一步完善充分利用 Excel 功能最后
使用Excel主要就是做表格,表格自然离不开数字,特别是对于会计专业的,每天都要处理大量的表格,大量的数字。
本文主要介绍使用VBA自定义函数(UDF)实现一个名叫MaxMinFair的有趣的算法。
作为一名Excel资深爱好者,手边当然离不开几本Excel技术书。这些优秀的技术图书不仅是我学习Excel技术的“领路人”,而且是我在解决Excel疑难时的“解答器”,并且时不时地翻阅它们,也给我带来撰写Excel技术文章的灵感。
今天从WPS官方邓华老师那里获得了WPS内测安装包,支持WPS表格的动态数组公式,测试了一轮,还是比较满意,没有像之前跟进Excel365新函数那样,只是部分支持,这一次,基本上已经和Excel365的体验一致。
引言:本文的练习整理自chandoo.org。多一些练习,想想自己怎么解决问题,看看别人又是怎解决的,能够快速提高Excel公式编写水平。
11年前,刚工作的我开始接触Excel,我还记得问的同事第一个问题:我写个1,怎么能拉下去的时候变成1、2、3、4、5?
当需要在单元格区域中找到某个值时,可以使用MATCH函数。在单元格中查找特定字符串时,FIND函数和SEARCH函数非常方便。如何知道单元格中是否包含与给定模式匹配的信息?显然,可以使用正则表达式。
我们使用Excel VBA绝大多数情况都是在处理Excel的数据,一般都是直接读取Excel,也就是使用Workbooks.Open,随着VBA使用的深入,我们要处理的数据可能不局限在Excel里,有时候也会需要去读取外部的数据。
身边朋友经常问我,“猴子,我一个月总有几天,用Excel干同一件机械重复的事儿,有没有省时省力的招儿?”
在Excel中,公式是一项非常强大的功能,可以说,你能想到的,公式都可以给你做到。在完美Excel中,我曾分享过很多令人惊叹不已的公式,例如:
下面是2020年11月12日发布的一些简单的ExcelVBA问题的答案,是不是和你想的一样。
你可以使用多种方法,包括:使用VBA,创建数组公式,编写多个公式,等等。本文将给你展示一种“最懒的”方法,也可能是最快且最容易的方法。
如果你只用VBA处理Excel的数据的话,一般都不会碰上编码的问题,但是一旦涉及到读取外部数据,就很有可能会碰上编码问题了。
本文的背景是:大学关系很好的老师问我能不能把Excel中1000个超链接网址对应的pdf文档下载下来。
在《Excel实战技巧15:在工作表中查找图片》中,我们使用名称和INDEX/MATCH函数组合,在工作表中显示与所选择名称相对应的图片。在《Excel实战技巧21:在工作表中查找图片》中,使用名称和OFFSET/COUNTA/MATCH函数来实现相同的效果。在《Excel实战技巧22:在工作表中查找图片(使用VBA代码)》中,使用VBA代码来达到根据名称显示相应图片的效果。在《Excel实战技巧85:从下拉列表中选择并显示相关的图片》中,以更为简单的方式实现的了显示图片的相同效果。本文将在显示图片的同时显示相关的文字说明。
引言:在《Excel公式练习87:返回字符串中第一块数字之后的所有内容》中,我们给出了解决这个问题的一个公式,本文中,尝试着使用另一个公式来解决这个问题。尝试多种方法解决问题,能够帮助我们快速提高。
本次的练习是:如下图1所示,使用公式拆分列A中的字符串,从中返回列B中的字符串。例如,如果字符串是Monaco7190Australia1484,那么返回第一块数字右侧的所有字符串Australia1484。
> 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas
最近,一直有朋友问我到底学不学VBA,我一般不建议他们学,除非对编程很感兴趣,或者本身已经有一定的编程基础,否则,将耗费大量的精力,而收效甚微。
我们可能熟悉使用INDEX、SMALL等在给定单列或单行数组的情况下,返回满足一个或多个条件的值的列表。这是一项标准的公式技术。
Excel有一个有趣且非常有效的技巧叫做隐式交集(Implicit Intersection),允许有效地使用大的命名区域和整列引用。
如何告诉Excel在不使用指数表示法的情况下四舍五入到指定数的有效数字?可以使用下面的公式:
使用Excel处理数据,经常会在单元格中使用公式引用多个工作簿之间的数据,工作簿以及被引用数据的工作簿关闭后,再打开工作簿的时候,会出现如下提示:
引言:本文学习整理自microsoft.com,LAMBDA的真正的解决了Excel公式存在的先天不足,让Excel公式真正的强大起来了。
在一个工作簿中,如果工作表太多了,要选中需要操作的Sheet还挺麻烦的。对于Excel用的不大熟练的人,只会按左下角的方向箭头,然后用眼睛去查找,有的人为了让Excel显示多一些工作表名称,还会把右下角的滚动条拉的只剩一点点,造成操作Sheet都不方便。
在《Excel实战技巧15:在工作表中查找图片》中,我们使用名称和INDEX/MATCH函数组合,在工作表中显示与所选择名称相对应的图片。在《Excel实战技巧21:在工作表中查找图片(方法2)》中,使用名称和OFFSET/COUNTA/MATCH函数来实现相同的效果。在《Excel实战技巧22:在工作表中查找图片(使用VBA代码)》中,使用VBA代码来达到根据名称显示相应图片的效果。本文实现的效果相同,实现的方法类似,但可能更简单些。
Excel中有一个函数DEC2HEX,可以将十进制数转换成十六进制数,然而,当要转换的十进制数较大时,就会出现错误。例如,当转换数字1111112222222时:
昨天一个前端的朋友找我帮忙用excel提取代码中的汉字(字符串),可算费了劲儿了,他要提取的内容均在单引号中,但问题是没有统一的规律,同一个单元格可能存在多个要提取的内容,而且汉字中间也夹杂其他字符。
VBA虽然整体语言上的更新是停滞的,但在OFFICE对象接口上,还是会有所更新。例如Excel里的新增的函数,在Application.WorksheetFunction类下面会有所更新,但不是全都有,也不知道未来会补充多少。
因为VBA这个语言其实在很多地方都有,Office每个套件应该都有,我还知道的是CAD也用这个语言。
👆点击“博文视点Broadview”,获取更多书讯 ▊ VBA与Python:当王者荣耀遇到卷王之王 VBA语言是VB的一个子集,具有简单易学、功能强大的特点。 上世纪90年代末至今,VBA语言被大部分主流行业软件用作脚本语言,包括办公软件如Excel、Word、PowerPoint等,GIS软件如ArcGIS、MapInfo、GeoMedia等,CAD软件如AutoCAD、 SolidWorks等,统计软件如SPSS等,甚至连图形软件如PhotoShop、CoralDraw等也使用VBA进行脚本编程。
领取专属 10元无门槛券
手把手带您无忧上云