用另一列中的列表中的值填充空单元格

我有以下Excel spreasheet:

ABC 1 =IF(B1<>"",B1;OFFSET(B1,-1,0)) CompanyA 2 =IF(B2<>"",B2;OFFSET(B2,-1,0)) 3 4 CompanyB 5 CompanyC 6 7 CompanyD 

在BI列中有不同公司的列表,在公司之间它们可能是空行(在这种情况下是行2,行3 或行6) 。 在AI列希望实现空行填写公司名称,最后电子表格看起来像这样:

  ABC 1 Company A CompanyA 2 Company A 3 Company A 4 Company B CompanyB 5 Company C CompanyC 6 Company C 7 Company D CompanyD 

我尝试使用带有A列偏移量的If-formula,但只有在不多于一个空行时才能使用,因此它只适用于CompanyB,C和D,但不适用于公司A.

你有什么想法,我不得不在列A中使用哪个公式来解决这个问题?

请参考下面的单元

在A2中应用下面的公式并向下拖动

 =IF(B2<>"",B2,A1) 

在这里输入图像说明

编辑#1:另一种方法,如果数据从第1行开始

如果数据以B1开始,则在A1中应用以下公式,然后向下拖动

 =IF(B1<>"",B1,IF(ROW()=1,B1,OFFSET(A1,-1,0))) 

在这里输入图像说明

如果第一个单元格B2不是空的,请尝试:单元格A2中的=B2 ,单元格A3中的=IF(B3<>"";B3;A2)并填充。