回答

0

这应该做的伎俩

=ARRAYFORMULA(transpose(split(concatenate(rept(A2:A&char(9)&",",if(isBlank(B2:B)=false,(len(Q6:Q)-len(substitute(B6:B,",",))+1),0))),","))) 

同样已被分成多行下面的可读性

=ARRAYFORMULA(
      transpose(
      split(
      concatenate(
      rept(A6:A&char(9)&",",if(isBlank(B2:B)=false, 
            (len(B6:B)-len(substitute(B6:B,",",))+1),0) 
      ) 
      ),",") 
      ) 
      ) 

我只加炭(9)添加以确保一个空白小区的方法是,当分割逗号。

if语句检查列B中是否存在任何空行并跳过它,否则列B中的空行也会创建更多行。这会在行输出的数量超过可用行数时产生错误。

+0

我试过用这个。它抛出了一个错误:“函数REPT参数2的值是-26,它应该大于或等于0”。 – rockinfreakshow

+0

我得到它的工作,但它有点错过了一个日期! – rockinfreakshow

+0

该代码适用于您在工作表中显示的示例数据。如果共享测试用例失败,我可能会改进代码 –

相关问题