Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 如何从谷歌表格中的一个单元格重新开始计数?_Google Sheets_Google Sheets Formula_Gs Vlookup - Fatal编程技术网

Google sheets 如何从谷歌表格中的一个单元格重新开始计数?

Google sheets 如何从谷歌表格中的一个单元格重新开始计数?,google-sheets,google-sheets-formula,gs-vlookup,Google Sheets,Google Sheets Formula,Gs Vlookup,我有一个包含以下三列的表: Col1 Col2 Col3 1 A Cat 2 B Dog 3 C Lion 4 M Deer 5 X Cow 6 P Orange 现在在另一个单元格中,如果我的查找值与col1值匹配,我想从col3复制值。假设我的查找值为1,则应复制Cat,然后在连续列中复制所有其他值 If Lookup Value -> 1,

我有一个包含以下三列的表:

Col1   Col2    Col3
1      A       Cat
2      B       Dog
3      C       Lion
4      M       Deer
5      X       Cow
6      P       Orange
现在在另一个单元格中,如果我的查找值与col1值匹配,我想从col3复制值。假设我的查找值为1,则应复制Cat,然后在连续列中复制所有其他值

If Lookup Value -> 1, then the output should be

grp1    grp2    grp3
Cat     Dog     Lion
Deer    Cow     Orange

If lookup value -> 3, then the output should be

grp1    grp2    grp3
Lion    Deer    Cow
Orange  Cat     Dog
所以这是一种从原始表中循环复制

我试着用vlookup公式

vlookup(lookup_val,$Col1_Row1$Col3_Row6,3,FALSE)
并通过添加以下内容将其复制到所有输出单元格:

Col_number + Row_number - 1 
设置为查找值,使输出单元格具有以下公式:

grp1   vlookup(lookup_val,$C1_R1$C3_R6,3,FALSE)    vlookup(lookup_val+3,$C1_R1$C3_R6,3,FALSE)
grp2   vlookup(lookup_val+1,$C1_R1$C3_R6,3,FALSE)    vlookup(lookup_val+4,$C1_R1$C3_R6,3,FALSE)
grp3   vlookup(lookup_val+2,$C1_R1$C3_R6,3,FALSE)    vlookup(lookup_val+5,$C1_R1$C3_R6,3,FALSE)
但这不起作用,因为一旦查找值大于1,由于后续单元格中的查找值加起来超过6,公式就会出错


关于如何解决这个问题有什么建议吗?

对于这个特殊情况,您可以使用MOD和VLOOKUP的组合:

=ArrayFormula(vlookup(mod(row(A1:C2)*3+column(A1:C2)+D2-5,6)+1,A2:C7,3,false))


将其推广到不同大小的范围是相当容易的。

您是否想过设置一个条件
=如果…
来避免它?请选择您的应用程序,它是Excel或Google Sheets。虽然两者有一些相似之处,但在很多方面都不同。@DavidGarcíaBodego将如何使用=IF help,因为它将检查错误,但如果条件不满足,它不会复制我想要的值?@JvdV改为google sheets。在您的情况下,VBA的解决方案将很简单,但由于您正在寻找直接公式,在索引超出范围的情况下,您需要另一个公式(
如果需要),或者只是循环数据。