excel公式教程:TRANSPOSE,非数组版本
发布时间:2023-08-19 01:07:36
有时候,我们想要寻找通常需要数组公式的非数组版本,其理由可能是:
1. 认为这样可以提高工作表的性能(有时可以,有时不能)
2. 不喜欢必须使用输入数组公式所必需的Ctrl+Shift+Enter组合键
3. 从理论上讲,可能只是感兴趣
本文研究数组公式的非数组版本,更多地属于第三类。强迫TRANSPOSE正常运行而不进行数组输入的必要强制措施令人费解且不切实际。这并不是说对它们没有兴趣,但这些强制性的使用并非TRANSPOSE独有。实际上,可以在许多函数中使用它们来生成返回值,否则将需要数组输入。
下面是一个示例。假设从单元格A2起其下的单元格相加,想要确定这样的和在哪个单元格等于或超过某个数,例如5。这些单元格依次相加的和显示在列B中,假设我们不希望在解决方案中使用这样的辅助列。并且,假设我们希望返回必须相加才能达到该数的单元格数,如下图1所示。
图1
从图1中可以清楚地看出,答案是3,因为前3个单元格中1+2+3=6大于我们给定的目标数5。
有两种标准的技术可以得到我们想要的结果。一种是使用数组公式:
=MATCH(TRUE,MMULT(0+(ROW(A2:A6)>=TRANSPOSE(ROW(A2:A6))),A2:A6)>5,0)
另一种是在公式中引入INDEX函数来代替数组公式(有关此技术的详细讨论,请参见《Excel公式技巧03:INDEX函数,给公式提供数组》)。公式为:
=MATCH(TRUE,MMULT(0+(ROW(A2:A6)>=TRANSPOSE(N(INDEX(ROW(A2:A6),,)))),A2:A6)>5,0)
注意,这里不仅添加了INDEX函数,也添加了N函数。
如果传递给TRANSPOSE的数组不是其他函数生成的,而是实际的单元格区域引用,那么对于等效的非数组的必要强制将更加复杂。例如,下面的示例:
图2
想要求出B1和A2、C1和A3、D1和A4、E1和A5的乘积之和,可直接使用公式:
=(B1*A2)+(C1*A3)+(D1*A4)+(E1*A5)
答案是70。
先试试SUMPRODUCT函数来简化求乘积之和的公式:
=SUMPRODUCT(B1:E1*A2:A5)
结果是260,显然是错的。这是因为传递给SUMPRODUCT函数的两个数组是正交的,所以求出来的和是这些数字交叉相乘后的和,如下图3所示。
图3
在B1:E1和A2:A5中的每个值依次相乘后的结果为260。
这样,我们需要将B1:E1和A2:A5进行转换,以确保这两个数组是相同类型的向量,即都是单行或都是单列。下面,尝试公式:
=SUMPRODUCT(B1:E1*TRANSPOSE(A2:A5))
得到的结果是78。并不是我们想要的结果,这个公式的中间结果为:
=SUMPRODUCT(B1:E1*3)
也就是说,TRANSPOSE函数仅返回数值3。
如果输入下面的数组公式:
=SUM(B1:E1*TRANSPOSE(A2:A5))
得到正确的结果70。上面的公式能够像我们预想的那样转换:
=SUM({5,6,7,8}*{1,2,3,4})
如果我们不输入本文开头的连乘和的公式(对于大量的数据是不可取的)或者刚才的数组公式,那么能够编写其他公式获得正确的结果吗?
使用非数组公式:
=SUMPRODUCT(B1:E1,TRANSPOSE(INDEX(A2:A5,N(IF(1,INDEX(ROW(A2:A5)-MIN(ROW(A2:A5))+1,,))))))
得到正确的结果70。
我们可以仔细地研究一下本文展示的技术,它们既可以与TRANSPOSE函数结合使用,也可以应用于其他函数。不推荐单纯为避免输入数组公式而想方设法采用其他公式,然而研究一下非数组公式解决问题也是一项有趣的练习!


猜你喜欢
- 问题描述:Win8系统下通过Windows update或第三方安全软件等方式修复了11月13日的补丁后,重启电脑时会停留在modern界面
- 相信大家都有遇到过扩展名为nh的文件,可能会有不少朋友对这种格式的文件会比较陌生,不知道应该用什么软件打开。其实,nh文件是中国期刊网的电子
- Acrobat怎么删除pdf文件中的水印?pdf文件中有水印,想要删除水印,该怎么删除呢?下面我们就来Acrobat删除水印的教程,需要的朋
- 中国移动推出的5G消息app在上线仅一天便下架了,有很多的网友们感到非常的奇怪,5G消息app上线仅一天下架为什么,下面为大家带来下架的原因
- 近期有部分Win11用户在电脑的使用中,遇到了电脑死机没有反应的情况,这一情况十分令人头疼,那么有没有什么好的方法可以解决呢?下面小编就为大
- 由于系统架构变化.NET 3.5离线安装包无法直接安装,需联网下载数据包安装,下面是具体的操作步骤,需要的朋友不要错过知识点分析:默认情况下
- 有很多朋友使用的是360浏览器,偶尔有些朋友询问怎么设置点击链接后继续留在当前页面?有人需要这样的功能,这样就可以一口气点开十几个页面,那么
- 想要更好的处理mac音频文件吗?一款优秀的音频处理软件是你在音乐制作、剪辑工作中必不可少的利器。小编为大家推荐这6款音频处理工具,即使是非专
- Hyper-v虚拟机怎么连接U盘今天教大家这个问题的操作方法。很多用户在使用这个虚拟机的时候,需要将自己u盘里面的文件程序导入进去。但是却不
- Win10 TH2正式版不能待机也不能关闭屏幕和睡眠该怎么办出现这个问题还是因为win10兼容的原因,与Windows10的“快速启动”有冲
- 硬盘驱动器在计算机存储介质是最重要的,随着硬盘的价格的快速下降,越来越多的朋友使用双硬盘的硬盘,一般而言,大家都是将其中一块作为系统主盘,另
- 160WiFi是一款非常好用的无线路由软件,它可以让电脑模拟成无线路由器,让手机等其它无线设备联网,达到WiFi共享的效果。不过,近日有用户
- Excel2010中,在快速工具栏添加了好多的快速启动项。那么,需要把Excel表格的快速访问工具栏恢复到默认的状态应该怎样做呢?今天,小编
- 在使用WPS的过程中,很多人编辑好一个文档,都会忘记保存,一下子把它关闭了,其实,WPS中有定时备份机制。默认时间是10分钟。下面小编就教大
- 360驱动大师如何安装打印驱动?当我们在使用360驱动大师时想要安装打印驱动应该如何操作呢?今天小编给大家带来的是360驱动大师安装打印驱动
- 电脑安全模式是电脑中非常特殊的一个模式,但是很多朋友不知道电脑安全模式怎么进,其实操作方法还是非常简单的,下面小编就来告诉你电脑安全模式怎么
- Win11系统怎么进行多任务分屏?最近有用户询问这个问题,相信还有很多用户不清楚,多任务分屏更加方便浏览,具体怎么打开呢?针对这一问题,本篇
- 咱们在 操纵PPT 停止 一样平常办公时, 常常 需求 建造 林林总总的幻灯片, 咱们在 拔出图片的 时分, 特别是多张图片, 凡是都是 增
- 在编辑文档时,我们常常需要对齐一些字体,比如简历的姓名和出生年月字体首末对齐,显得美观而且大方,而且也显示一种正规。那么下面就由小编给大家分
- 有时候我们在使用wps文字写文章时,也可能会在一些地方想要插入表格,这个时候要怎么用wps文字制作表格呢?下面是小编整理的wps文字制作表格