根据单元格中的值将数据从一个 sheet 复制到另一个

Copying data from one sheet to another based on value in a cell

我有一个 Google sheet 有多个 sheet。 大使用户 sheet 有一个包含多个用户的列表(ID、电子邮件、优惠券和另外三个不相关的列)。 每个新用户都会通过 Zapier 更新到 sheet。 我可以让三个用户使用优惠券 1234,四个使用 ABCD,两个使用 XYZ。 然后,我为每种类型的优惠券(也通过 Zapier)创建了一个唯一的 sheet,并希望仅针对具有该 sheet 的正确优惠券的用户更新每个 sheet。 优惠券也列在每个 sheet 的单元格 J1 中。 我需要在不按任何按钮的情况下自动进行更新。

我不知道如何使用 Google sheet 上的函数(我知道它与 VBA 不同),虽然使用函数是最好的解决方案. 我尝试将 IF 函数与 INDEX 函数结合使用并且它起作用了,但是,它需要我将函数复制到每一行中,从而减少了自动化选项。

=if('Ambassador users'!$C3=$J, index('Ambassador users'!A3:G3),"")

然后我尝试使用 IMPORTRANGE 函数,这有效,但不能与 IF

一起使用
=if('Ambassador users'!$C2=$J, importrange("1QHGSCR_pVepNlMtjFshvGnI-vSPzgqi3g9jz98","'Ambassador users'!A2:G11"),"")

这给了我大使用户中的所有行 sheet。

我想我做错了 IF 语句在我设置的初始范围内是错误的。 我也尝试在IF中设置一个范围,但是完全没有用。

尝试这样 ARRAYFORMULA:

=ARRAYFORMULA(IF('Ambassador users'!C3:C=J1, 'Ambassador users'!A3:G, ))

或者 FILTER:

=FILTER('Ambassador users'!A3:G, 'Ambassador users'!C3:C=J1)