对于每个单元格值:重复一系列值

For Each Cell Value: Repeat a Range of Values

提问人:Amazeing Games 提问时间:11/14/2023 最后编辑:Amazeing Games 更新时间:11/17/2023 访问量:61

问:

我的任务是创建一个电子表格,以跟踪给定日期范围内(通常为 1 周)每天的员工工作时间。对于该范围内的每一天,我都需要写出所有员工的姓名,然后在他们的名字旁边写上他们的工时。从本质上讲,我需要把每个员工的名字写出来,就像几天一样。我想象它看起来有点像这样,日期、日期和名字都是自动为我写出来的。

-- 示例数据 --

日期 - 9/10/2023 |9/11/2023 |9/12/2023 |2023/9/13 |9/14/2023 |2023/9/15 |9/16/2023

- 星期日 |星期一 |星期二 |星期三 |星期四 |星期五 |星期六

员工名单 - Jack |唐纳德 |迈克 |菲利普

9/10/2023 星期日
千斤顶 8小时
唐纳德 4小时
话筒 0 小时
菲利普 8小时
9/11/2023 星期一
千斤顶 0 小时
唐纳德 4小时
话筒 8小时
菲利普 0 小时
9/12/2023 星期二
千斤顶 2小时
唐纳德 8小时
话筒 0 小时
菲利普 8小时

-- 以此类推 --

我对 Google 表格有点陌生,但我花了几个小时来研究这个问题,我已经克服了大部分障碍——除了我必须自动生成列表的部分。

迄今-

我使用以下公式自动生成所有日期

// Writes all the dates starting from the given start date (E2), for as many given days (D2) 
=ARRAYFORMULA(TO_DATE(SEQUENCE(D2, 1, E2, 1))) 

我每天都使用这个公式自动生成

//Writes all the days for the each of the corresponding dates, starting from the start date (E2), for as many given days (D2)
=ARRAYFORMULA(switch(WEEKDAY(SEQUENCE(D2, 1, E2, 1)), 1, "Sunday", 2, "Monday", 3, "Tuesday", 4, "Wednesday", 5, "Thursday", 6,"Friday", 7, "Saturday"))

我使用以下公式引用了所有工作人员名称

// Gets a list of all the workers by using an indirect reference by using the counted items (D5) + where the list starts (E5)
=ArrayFormula(E5:INDIRECT("E"&ROW(E5)+D5)&{""}) 

我知道我拥有完成这项工作所需的所有基本信息,但我只是不知道如何将它们组合在一起以制作我需要的东西。将不胜感激,因为这个问题超出了我目前的知识范围。希望我已经提供了足够的细节!

我试着研究类似的问题和人们遇到的不同解决方案,这篇文章似乎是我需要的一切,但它太复杂了,我无法弄清楚;我最终得到的只是各种不同的错误。

我还尝试重复和展平数组,但这并没有达到我想要的效果,因为它列出了所有的日子,然后是所有的日子,然后是所有员工都写在一列中,这使得它几乎毫无用处。

它最终看起来有点像这样:

9/11/2023

9/12/2023

9/13/2023

9/14/2023

...

星期日

星期一

星期二

...

千斤顶

唐纳德

话筒

菲利普

等。。。

这是我的电子表格的副本,具有编辑权限,以及一个手动制作的示例。我非常感谢任何答案!

--

编辑:已经找到了解决方案!非常感谢所有的回应。随意使用它来满足您的内心需求!

此外,这里还有一个具有编辑者访问权限的版本。享受!

google-sheets lambda google-sheets-formula 电子表格

评论

3赞 jsotola 11/14/2023
期望的结果有些尴尬,没有多大意义......你有没有考虑过把四个名字放在第一栏,星期一放在第二栏,星期二放在第三栏,等等?...这样,每个员工的所有工作时间都是连续的
0赞 Tedinoz 11/16/2023
示例数据涉及四名员工。这是一个固定的数字吗?
0赞 Amazeing Games 11/17/2023
不,员工人数是一个可变数字,每周都在变化!
0赞 Tedinoz 11/18/2023
我真的很高兴你找到了解决方案。请您考虑发布答案,或提供指向您找到解决方案的网站的链接。可悲的是,随着时间的推移,有时用户会删除问题中引用的工作表,这限制了问题及其答案的付款价值。
0赞 Tedinoz 11/18/2023
关于你的解决方案。我使用了电子表格中的示例数据,然后添加了一名额外的员工。除了第一天之外,效果是将所有数据输入向下推,使行不再对齐。这是一个问题吗?我想如果你删除了一个员工,这也会产生相反的效果。

答: 暂无答案