我有一个 Excel 格式的银行交易导出列表,我想尽可能快速、简单地对其进行分类。我怀疑仅使用数组公式就可以做到这一点,但 VBA 函数同样有用。
场景
我的电子表格标题如下所示:
| A | B | C | D |
==========================================
| Date | Description | Amount | Category |
------------------------------------------
Run Code Online (Sandbox Code Playgroud)
日期、描述和金额均由我的银行预先填写。我在 D 列中填写每笔交易的类别。
这很好,但很耗时,因为每个类别都必须单独手动输入。
需求
我希望根据动态生成和应用的规则,在我未输入手动类别的行中自动填充类别。
我想要的输出如下所示:
| A | B | C | D | E | F |
==============================================================================
| Date | Description | Amount | Manual cat. | Rule | Auto cat. |
------------------------------------------------------------------------------
| 04/08/12 | Starbucks NYC | -$5.42 | Coffee | starbucks | Coffee |
| 04/09/12 …Run Code Online (Sandbox Code Playgroud) 我进行了长时间的搜索,但找不到我要找的东西。也许有人可以帮忙?
我的 Google 电子表格中有这个公式(我将在下面解释它的作用):
=Join(" ",FILTER(Sheet1!B:B;Sheet1!A:A=A1))
Run Code Online (Sandbox Code Playgroud)
表 1 中有一个表格:A 列是名字(例如“James”),B 列是一些评论(例如“Headache”)。James(或任何其他人)可能有多行,每行都有不同的注释(例如 James 有 2 行,一行说“头痛”,另一行说“膝盖疼痛”。)
在工作表 2 的 A 列中,我有一个出现在工作表 1 中的名称列表(使用“=UNIQUE”公式)。A1 写着“詹姆斯”。在单元格 B1 中我输入上述公式。
结果几乎正是我想要的。它将詹姆斯的所有评论连接到一个单元格中,每个评论之间有一个空格“”。因此,单元格 B1 中的结果是:“头痛、膝盖疼痛”。
但是,我必须将此公式拖到下面的所有单元格中。有谁知道我如何才能像我过去使用过的所有其他数组公式一样,其中公式自动填充下面的所有单元格?我尝试将其设为数组公式,但没有成功。
我也一直在尝试这个公式,它给了我相同的结果“头痛膝盖疼痛”,但公式仍然不会复制到下面的单元格中。
=SUBSTITUTE(Arrayformula(concatenate(FILTER(Sheet1!B:B;Sheet1!A:A=A1)&" "; "|"));" |";"")
Run Code Online (Sandbox Code Playgroud)
如果有人知道如何实现这一目标,我将非常感激 - 非常感谢您的宝贵帮助。
感谢您的关注!
多单元格数组公式允许您将公式应用于 Excel 中的整个列。例如:
{=B10:B20+C10:C20}
Run Code Online (Sandbox Code Playgroud)
为什么Excel表格中不允许使用多单元格数组公式?在表中,您只能使用单个公式,例如=B10+C10,,,=B11+C11...,但是您可以在行中使用不同的公式。数组公式可以防止这种情况发生。
在 col 中A,我在 col 中有一个电子邮件地址列表,B我想捕获重复项,因此,如果 A 中的电子邮件地址出现在我在B. 我正在使用这个效果很好的公式:
=if(isna(match(a3,$A$2:A2,0)),"New","Duplicate")
请注意,当我拖动此公式时,$A$2范围会保持不变(例如,对于单元格,B51范围将从 开始$A$2:A50)
我的问题是,由于列A自动更新(例如添加新的电子邮件地址),我希望列B也自动更新。我尝试使用 Arrayformula 但无法弄清楚:( 我都尝试了:
=arrayformula(if(isna(match(A3:A,$A$2:A2,0)),"New","Duplicate"))
但
=arrayformula(if(isna(match(A3:A,$A$2:A2:A,0)),"New","Duplicate"))
它们不起作用。
这是一个带有示例的电子表格,我(失败)尝试解决它 https://docs.google.com/spreadsheets/d/1N3pFPnT452FmWa9w8EkYpIq-ZnivjoCzt5ORrNEKgLQ/edit#gid=0
我正在使用 Google Sheets 并寻找一个数组公式,该数组公式能够将列表分成两列并将其交替排列在一列中。该表包含约 5,000 行,每行超过 35 个字符。
我试过这个:
=transpose(split(join(" ", query(transpose(B5:C),,50000)), " "))
Run Code Online (Sandbox Code Playgroud)
但后来我收到了这样的消息:
请看一下这里的表格:
https://docs.google.com/spreadsheets/d/11T1Roj1trviOSiiTZS292-4l3oODid7KLi9oGz3Z66o/edit#gid=0
我在 Google 表格中设置了一组列,使用以下函数显示两个日期之间的差异DATEDIF:
=DATEDIF (AS2, TODAY(), "D")
Run Code Online (Sandbox Code Playgroud)
(从某一日期至今经过的天数)
=DATEDIF (AR11, AS11, "D")
Run Code Online (Sandbox Code Playgroud)
(两个特定日期之间经过的天数)
这些值表示为数字(天数)。这对于较短的持续时间来说很好,但对于像 987 天这样的东西,我想将值显示为更直观的东西,例如:
| 2 Years, 8 months, 17 days |
Run Code Online (Sandbox Code Playgroud)
如果在同一列中不可能做到这一点,我至少希望有一组三列,以三种不同的值类型显示此持续时间:
| 2 Years | 8 months | 17 days |
Run Code Online (Sandbox Code Playgroud)
当然,仅更改每列的值类型(例如从几天到几个月)就足够简单了,但我不确定如何继续保持显示的值彼此相关(而不仅仅是让相同的值可以在不同的持续时间类型中显示)。
请问有什么建议吗?
formatting date google-sheets array-formulas google-sheets-formula
我正在尝试使用 Google Sheets 中的 ArrayFormula 函数应用于=$V$1整个 V 列(从 V3 开始)。
我已=ArrayFormula($V$1)在单元格 V3 中写入,但这不会填充整个列。
我究竟做错了什么?
arrays if-statement google-sheets array-formulas google-sheets-formula
我正在使用IMPORTDATA公式来填充 CSV 文件。我遇到错误。
文件大小为 8MB,所以我认为这可能是问题所在,因为我以前使用过这个公式,没有任何问题,我是否有其他方法可以将此数据填充到工作表中?
这是我正在使用的公式:
=IMPORTDATA("URL.csv")
Run Code Online (Sandbox Code Playgroud)
我希望上传整个文件,但遇到错误消息:
错误 URL 内容中的资源超出了最大大小。
google-sheets array-formulas google-sheets-query google-sheets-formula
我已将 JSON 数据导入到我的工作表中。我想对导入的数据使用诸如=STDEV和 之类的函数,但如果这样做,我就会不断收到错误。我能做什么来解决这个问题?=AVERAGE#div/0
json average google-sheets array-formulas google-sheets-formula

所以我试图填写 Google 表格中两个单元格之间的数字。我从 270 开始,在列中出现几个不确定且变化的空单元格后,我需要达到 180。我需要均匀地填充它们之间的单元格。但如何呢?
arrays autofill google-sheets array-formulas google-sheets-formula
array-formulas ×10
arrays ×2
excel ×2
autofill ×1
average ×1
date ×1
formatting ×1
formulas ×1
if-statement ×1
json ×1