arrayformula似乎只能在顶级嵌套级别工作

时间:2017-10-19 09:11:15

标签: google-sheets worksheet-function array-formulas

  =ARRAYFORMULA(if(isblank(B2:B),"",CONCATENATE("B=",B2:B))) 

重复列。但是,

B=

生成一个值为ARRAYFORMULA的列,但后跟结果列的每个单元格中B列的所有行值的并置。

看起来B2:B左边的效果,即使它是两个嵌套级别,也会产生正确的结果(仅当列B在每一行中不是空白时的值),但B2:B的效果在右边,有不同的效果,并根据我不理解的条件而变化,有时是单个值,有时扩展到整个数组。这使得ARRAYFORMULA对我的应用程序的用处非常有限。我希望结果列只有B列相应行的单个值。

我是否遗漏了有关如何使用B=的内容?

是否有不同的方法可以实现我在结果列中每个单元格前面添加(function () { 'use strict'; var HeaderComponent = { bindings: { pageTitle: '@' }, template: '<div class="crumby-title">{{$ctrl.pageTitle}}</div>' } angular.module('myapp', []) .component('myHeader', HeaderComponent); })(); <my-header page-title="Title!"></my-header> 的目标? (实际上,我的目标是对单元格值和其他文本进行更复杂的组合,但是我把它简化为这个更简单的情况,我不明白,也许如果我弄清楚,我可以做更复杂的东西也是)

1 个答案:

答案 0 :(得分:2)

CONCATENATE将所有数组合并为单个值。我相信这是你正在寻找的:

=ARRAYFORMULA(if(B2:B="","",("B="&B2:B)))

这里有一些值得思考的东西。您对以下公式有何看法?

=ARRAYFORMULA(CONCATENATE(if(isblank(B2:B),"",("B="&B2:B&""))))

同时尝试CONCATJOINTEXTJOIN。每个人都可能看起来一样。但这些微妙的差异使世界变得与众不同。