excel利用数组公式和自定义函数对单元格内的数字排序
发布时间:2023-04-22 08:52:05
假如Excel工作表的A1单元格中包含某个数字,如“987650056789”,要将各位数字按从小到大顺序排列,即得到“005566778899”,通常可以用数组公式或自定义函数:
如果单元格内的数字不超过15为,可使用下面的数组公式将数字按从小到大的顺序排列,在B1单元格中输入:
=TEXT(SUM(SMALL(–MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),ROW(INDIRECT("1:"&LEN(A1))))*10^(LEN(A1)-ROW(INDIRECT("1:"&LEN(A1))))),REPT("0",LEN(A1)))
注意需按Ctrl+Shift+Enter结束输入。如果要将数字按从大到小的顺序排列,可将“SMALL”改为“LARGE”函数。受数字精度的限制,如果单元格内的数字超过15位,可能得不到正确的结果。而使用自定义函数则可用于较长的文本形式的数字。
按Alt+F11,打开VBA编辑器,单击菜单“插入→模块”,在代码窗口粘贴下列代码:
Function SortNumsInCell(num As String, Optional order As Boolean) As String
Dim Str As String
For i = 0 To 9
For j = 1 To UBound(Split(num, i))
Str = IIf(order, i & Str, Str & i)
Next
Next
SortNumsInCell = Str
End Function
上述代码定义了一个自定义函数,它有两个参数,第一个为单元格内的数字或直接输入的数字,第二个参数为“0”或省略时指定按从小到大的顺序排列,为“1”时则相反。关闭VBA编辑器,返回Excel界面,在B1中输入公式:
=sortnumsincell(A1)
即可得到按从小到大排列的数字。如果输入:
=sortnumsincell(A1,1)
则返回从大到小顺序排列的数字。
猜你喜欢
- KB5005030Microsoft为运行2018年10月更新(版本1809)的设备发布了Windows10内部版本17763.2114。这
- 我经常在网上复制一些比较有用的的文字到Word文档中,在粘贴后会发现除了文字以外,还带有一些其他的格式,这是我们不需要的,那么如何将它去除呢
- excel定位功能是一个常用功能,它有非常多有用的地方,excel定位空值和定位可见单元格,excel定位在哪以及掌握excel定位快捷键是
- 选择正确的图形首先要确定的是,哪种类型的图形更适合你要表现的数据。比如饼图适合部分与整体的比较,条形图适合显示增量类别之间的差异等等。像下面
- 我们可以通过打开Word菜单栏“文件”的下方,直接打开我们最近使用过的文档记录。这样就给我们节省了许多时间,非常的方便。但是事情往往有两面,
- office 2013 打不开旧版PPT文件一直报错怎么办?安装新版 office 2013后,发现很多旧版的 ppt 文件打不开,显示报错
- 许多用户在长时间使用电脑之后,电脑会自动产生一些缓存文件和垃圾文件。而随着用户使用时间的增加,这些文件也跟着增加就会导致电脑卡顿。那么遇到这
- 问题:WORD中如何在相交的直线交点上画上圆点?有没有什么工具能够实现?解答:先选中画贺工具。把鼠标的指针尖放在两条相交的直线的交点上然后按
- 对于移动、复制公式的操作与移动、复制单元格的操作方法一样,在这里就不再赘述。和移动、复制单元格数据不同的是,对于公式有单元格地址的变化,它们
- 我们怎样知道word文档中每页有多少行呢?这就要靠word行号帮忙了。Word中的行号可以自动计算文件中的行数,然后在各行文字旁显示适当的行
- 小刘基于现有数据,使用Excel 2010创建数据透视表,以快速合并和比较这些数据。他在数据透视表中,可以很清楚的看到各类汇总数据。1、使用
- 如果需要把A1:A2的内容合并起来,可以用公式=A1&A2如果需要把A1:A3的内容合并起来,可以用公式=A1&A2&
- Excel是我们经常使用的一款办公软件,那么如何解决Excel不能对合并单元格做部分更改呢?今天小编就为大家带来解决Excel不能对合并单元
- 相信不少朋友在从win10 1909升级到20h2的时候遇到失败的情况,升级到某个百分百的时候就失败,无论如何都不能升级成功,提示各种错误代
- 在编辑word文档的时候,为了使自己的文档阅读起来的时候更加的赏心悦目,我们想给word设置一个背景,让文档看起来不那么的单调,那么我们该怎
- 遇到word中超过一页的表格,可能会这样处理:把标题复制到每一页的开始部分,以确保每一页的表格都有标题。但是如果你对文章内容进行增加或删除,
- 打印execl账本时怎样设置打印区域?账本一般分为两个部份,一个部分是用来录入账的,一个部份用来显示账务(也就是要打钱出来给别人看的那一部份
- excel表格完美地复制到word中的方法:1、打开一片excel表格,都编辑好了,不要直接复制到word里面粘贴,按下面的步骤来;2、选择
- 一般情况下,Word文档需要为标题提供连续编号,默认的标题样式并没有自动编号的功能,那么下面就由小编给大家分享下技巧,希望能帮助到您。wor
- 打开Word2007文档窗口,依次单击“Office按钮”→“Word选项”按钮。打开“Word选项”对话框,切换到“高级”选项卡。在“显示