问题标签 [array-formulas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
73690 浏览

excel - 让公式将值视为文本,而不是数字

我有一个 Excel 公式从列中读取数据。该列中的数据有时是类似日期的格式,例如“10-11”。尽管我已确保该列是文本格式的——并且所有值都正确显示为纯文本,而不是重新解释为日期——该公式基本上将它们重新解释为参考中的日期。

我需要一种方法来强制公式的单元格引用将单元格解释为文本。我试过 TEXT(A1, "@") 但它不起作用——它给出了日期的数值。

0 投票
3 回答
662 浏览

excel - MS Excel:如何使 Max() 更高效?

我有一组看起来像这样的数据:

{=MAX(IF(A$2:A$100=A2,B$2:B$100))}用来计算MaxByID列。然而,数据集有超过 100k 行,其中大部分是唯一的 ID:这似乎是一种非常低效的方法,因为 C:C 中的每个单元格都必须遍历 A:A 中的每个单元格。

ID 字段是数字并且可以排序 - 有没有更智能地查找 MaxByID 的方法?

0 投票
2 回答
414 浏览

excel - 用数据填充电子表格的公式

我想在特定条件下填充一些单元格。问题是,我不知道如何仅使用公式(不能使用宏或排序)来做到这一点。

无论如何,这是我的工作簿,带有****

我一直在尝试做的是:

  • 根据所选周填充 Sheet2 任务。
  • 如果我选择第 2 周(在 Sheet2 中),它应该使用 Sheet1 中具有该周数的任务填充任务列表(在同一张工作表上)。

例如,现在它(假设)已经加载了一周 == 2 的任务。

有任何疑问,请告诉我!我希望我把我的问题说清楚了。

非常感谢您!

0 投票
1 回答
218 浏览

excel - 将 2-d Variant 数据推入 FormulaArray

我最初有一个返回二维变量数组的 VBA 函数:

我使用公式数组语法从另一个 vba 函数调用它:

在 Excel 中,如果我选择了足够大的范围,然后执行以下操作:

=我的包装器()

然后按 CTRL+SHIFT+ENTER,数据很好地拆分到该范围内的每个单独的单元格中。

但是,为了自动化,如果我将 MyWrapper 更改为:

以上不起作用。我看到 Excel 中没有显示任何内容。

我究竟做错了什么?

更新:

只是为了测试,如果我稍微修改 MyWrapper() 为:

从 SplitIntoCells 返回后,variant_temp 可以预见地具有二维数组,但即使在分配之后,后续的 Selection.FormulaArray 仍然没有任何内容。我确信我错过了一些非常明显的东西。

0 投票
2 回答
826 浏览

excel - Excel 的数组公式是否有编程接口?

例如,假设我有

在一个单元格中。有没有办法找出该数组中有多少元素,以及这些元素是什么?

现在实现@chris neilsen 的想法,我现在有了如下的 VBA 函数

但是它的数据看起来并不乐观,即

如果 Rows.Count 和 Columns.Count 正在计算工作表中使用的行和列,则它们是有意义的。但作为数组公式中数据的指示,没有。

0 投票
2 回答
4338 浏览

date - 当前日期为该月的第一天

在 Google 表格中,我正在寻找一个数组公式来为给定日期提供一个月的第一天。例如,如果 A1 是1/17/12 20:30B1 会读取1/1/12等等。该公式必须保持日期格式,以便我可以在此示例中的 B 列上按日期排序。

0 投票
5 回答
8779 浏览

excel - Excel VBA 计算方法不更新数组公式;显示为 #N/A

我在 Excel 中有一系列相互关联的数组公式。这些会自动调整大小以适应通过专有 Excel 插件生成的一系列数据。

但是,每当我的代码将某些数组公式重写为正确的新大小时,单元格都会显示为 #N/A,直到您在工作表上编辑另一个不相关的单元格、保存工作表或按 F9。

使用 Application.Calculate、ActiveSheet.Calculate 等代码没有任何效果。

但是,使用 SendKeys "{F9}" 可以。

例如,这些是工作表上的两个公式:

第一个公式在以编程方式写入一系列单元格后工作正常。它只是告诉我包含文本的单元格的行号。

第二个公式在以编程方式写入一系列单元格后不起作用。它给了我以前在数字列表中看到的最大行号(这是第一个公式的输出)。如果我按 F9,第二个公式会正确更新。如果我在 VBA 中执行 Application.Calculate,则不会发生任何事情。我还尝试了工作表级别可用的各种其他重新计算方法,但没有运气。

有没有人遇到过这样的事情?

编辑: 调整大小的代码基本上可以归结为这样的东西(剥离所有支持代码,使我可以对其进行更通用的调用):

首先,我这样做:

然后后来:

然后稍后:

简而言之,我复制了公式,清除范围,然后重写它。

0 投票
1 回答
9172 浏览

google-sheets - Google表格数据透视表上的自定义平均函数

我有一个电子表格,开始用于个人资金分析。我的主工作表称为“交易”,并具有类别、描述、日期和金额的标题(它基本上是一个支票登记簿)。我已经从该表中创建了一个数据透视报告,其中包含按类别划分的金额的总和、最小值和最大值。我想在该数据透视报告上创建一个自定义平均函数,但不知道如何去做。我想看到的是正面交易之间的负面交易的平均数量。我的积极交易是我的薪水,消极交易是我所做的任何支出。

一个例子可能有助于我在这里尝试做的事情......

假设对于“食品”类别,我有以下交易(按此顺序)... -20 -25 -30 100 -30 -35 -40

我希望我的平均值这样计算... ( ( (-20 + -25 + -30) / 3 ) + ( (-30 + -35 + -40) / 3 ) ) / 2

任何人都对如何增强我的数据透视报告来做到这一点有丝毫的想法?

0 投票
2 回答
3909 浏览

google-sheets - 对多个 TIME() 求和

我有这张分数表:

要将分数转换为实际时间,我使用:

有没有办法在不创建新单元格的情况下一次汇总所有这些总数?

(注意:我无法从原始单元格中删除 L 和 W)

0 投票
0 回答
18241 浏览

excel - 使用引用将数据从列转移到行

我连续有一些数据,比如 A1 到 Z1,我想在另一个电子表格中链接到这些数据。但是我想转置它,以便数据从 A1 运行到 A26。重要的是它以某种类型的函数链接,这样如果我更改第一张工作表上的数据,第二张工作表也会更新。

我正在考虑某种类型的公式,该公式表明,当您沿着 A 列中的一个单元格向下移动时,它知道从第 1 行右侧的下一个单元格中获取数据。所以:A2=B1; A3=C1;A4=D1 ...

有任何想法吗?