我试图找到一个公式,将表分组到列上,并将另一列中所有行的值连接起来。
例如,如果这是我的表:
| name | value |
|-------|---------|
| one | alpha |
| two | bravo |
| three | charlie |
| one | delta |
| two | echo |
| four | foxtrot |
| two | golf |
| three | hotel |
| four | india |
Run Code Online (Sandbox Code Playgroud)
这就是我想要的公式输出:
| one | alpha, delta |
| two | bravo, echo, golf |
| three | charlie, hotel |
| four | foxtrot, …Run Code Online (Sandbox Code Playgroud) google-sheets array-formulas gs-vlookup google-sheets-query google-sheets-formula
我有一个包含稀疏数据的人性化工作表:
PART | FRUIT
---------------
Alpha |
| Apples
| Pears
Beta |
| Lemons
| Oranges
Run Code Online (Sandbox Code Playgroud)
我想创建第二个自动更新的机器友好工作表,该工作表将填充 PART 列中的所有空单元格:
PART | FRUIT
---------------
Alpha |
Alpha | Apples
Alpha | Pears
Beta |
Beta | Lemons
Beta | Oranges
Run Code Online (Sandbox Code Playgroud)
我可以在机器友好的工作表上的“水果”列中保留空白单元格。但理想情况下我希望删除这些行:
PART | FRUIT
---------------
Alpha | Apples
Alpha | Pears
Beta | Lemons
Beta | Oranges
Run Code Online (Sandbox Code Playgroud)
如果我想在机器友好的工作表中使用插值,我会依靠MATCH 技巧或FILTER 粘贴到任何地方的公式。
但我真的想避免在添加、更改或删除原始工作表中的行时更新机器友好的工作表。(如果我向原始工作表添加新列,则必须更新它,我没问题。)这意味着使用手动插值是禁止的。
理想的情况是,我会在第二张纸上输入一个魔法={ARRAYFORMULA()}或=QUERY某种魔法,然后就不管它了。
={ ARRAYFORMULA(MAGIC(PART)), FRUIT }
但到目前为止,我还无法思考如何解决这个问题。有什么建议么?
我想计算一个列的最后20个数字的移动平均值.问题是列的某些单元格可能是空的,应该忽略它们.例:
A
175
154
188
145
155
167
201
Run Code Online (Sandbox Code Playgroud)
最后三个的移动平均值为(155 + 167 + 201)/ 3.我试图用平均值,偏移量,索引实现这个,但我根本不知道如何.我对宏有点熟悉,所以这样的解决方案可以正常工作:=MovingAverage(A1;3)
感谢您的任何提示或解决方案!
我试图愚弄我正在交给其他人的仪表板,它包含一些数组公式.如果有人编辑其中一个数组公式并忘记命中Ctrl+Shift+Enter,那么现在所发生的一切都是公式开始以微妙的方式返回错误的结果.
我想要的是某种IF检查,我可以添加到公式,如果他们忘记输入它作为数组公式,将允许我返回一个明确的错误.
就像是:
=IF(IsArrayFormula, NormalFormula, "Ctrl+Shift+Enter Required")
Run Code Online (Sandbox Code Playgroud)
VBA对我来说不是一个选择,但如果你想为没有这个限制的人留下VBA解决方案我不会投票.
我想要一个数组公式来总结每行G26:AD列,因为行数是动态的。
=ArrayFormula(sum(G26:26))
Run Code Online (Sandbox Code Playgroud)
不起作用。我尝试使用MMULT,但未能使其正常工作:
=MMULT(G26:26,TRANSPOSE(ARRAYFORMULA(COLUMN(G26:26)^0)))
Run Code Online (Sandbox Code Playgroud)
还有其他想法吗?
我在Excel VBA中使用了索引匹配公式来查找数据库中工具的部件号和描述.这是一个指数匹配公式与condintions.首先在某个数组中查找某个机器的工具类型的匹配项,然后将其与某个数组中的配置相匹配.
我的问题是我想要更改为查找方式,因为我使用公式编写特定范围,并且我希望它是灵活的,这样如果我在数据库中添加新行,我就不需要更改代码了.数据库是表名"Illuminators".
这是我以前使用的条件的公式,你可以看到有一个单元格引用,如果我要在数组下的数据库表中添加一个新工具,它就不会在那里查找它.
Selection.FormulaArray = "=INDEX(DB!R2C1:R21C7,MATCH(1,(DB_Illumiators!R2C1:R21C1=RC[1])*(DB_Illumiators!R2C2:R21C2=RC[2]),0),4)"
Run Code Online (Sandbox Code Playgroud)
我在循环中使用主表中的公式,并在第二张图片中的数据库工作表中使用它:
我将感谢那些帮助的人
拉斐尔
我正在尝试以一种可以使用'= MATCH()“函数进行复制的方式将超链接插入到单元格中。但是,我似乎无法找到一种无需使用GID即可链接Google表格中单元格的方法。
当我右键单击并“获取到此单元格的链接”时,我得到的URL末尾带有“#gid = 1933185132”。但是,它没有结构,我不能将其与MATCH公式一起使用,也不能像在Excel中通常那样自动填充它。
https://docs.google.com/spreadsheets/d/sheetkey/edit#gid=1933185132
但是,如果这具有像这样的单元格引用
https://docs.google.com/spreadsheets/d/sheetkey/edit#Sheet1!C12
我可以轻松地为MATCH函数重新创建它。
问题:是否有一种替代方法,可以像上面显示的那样链接单元格?如果不能,我可以使用公式提取“ Sheet1!C12”的GID吗?
我已尽我所能搜索了Google论坛和堆栈溢出,并且我看到的唯一解决方案似乎是使用带有“ var sheet”的脚本,而我对0编码知识一无所知。
这应该是一件非常简单的事情,但是我找不到出路。任何对此问题的见解都将受到赞赏。非常感谢你。
hyperlink google-sheets google-apps-script array-formulas google-sheets-formula
样本表.
正如标题所说,给定一列任意长度的任意数量的单词,想要一个ArrayFormula来获取所述列中所有单词的第一个字母.
我尝试了两种方法,见样本表.
1)使用SPLIT和ARRAYFORMULA,可以得到一个单元但不能向下延伸列.2)使用2个REGEXEXTRACT,可以得到前2个首字母并向下延伸
但是使用ArrayFormula可以获得整列的任意数量的单词.
是否可以使用REGEXEXTRACT返回多个单词的首字母?
我如何在单元格 A1 中显示每个单词的第一个字母:
例子:
A1= Foo bar
A1=福
在第一个例子中,我想显示“Fb”
在第二个例子中,我想看到“F”
如果 A1 = 空我不想显示任何东西
我试过这个:
=REGEXEXTRACT(A1;"^.")
Run Code Online (Sandbox Code Playgroud)
只显示第一个字母
regex google-sheets array-formulas google-sheets-query google-sheets-formula
我想创建一个表示两列数据的折线图:F,输入日期,H,美元金额。日期应该是 X 轴,Y 轴是美元金额。
问题是我希望折线图上的日期代表在给定周、月或年中输入的所有金额的总和。
这张照片是 YouTube 分析,它创建了一个类似于我想在工作表中创建的图表:
类似于这些分析如何让您选择您希望数据(在本例中为视图,在我的表格案例中为数量)在收集时汇总的方式,我只是想分开?图表来描绘每周、每月和每年的不同范围。
https://docs.google.com/spreadsheets/d/1P2vFfCVmsJwPLyD48YWQkwCR0jY3CPg7S9uOVlYhvkk/edit?usp=sharing 这是我想要可视化的数据类型的链接。
charts data-visualization google-sheets array-formulas google-sheets-query
array-formulas ×10
excel ×3
regex ×2
vba ×2
charts ×1
excel-vba ×1
gs-vlookup ×1
hyperlink ×1
if-statement ×1
nested-if ×1
vlookup ×1