如何使用公式将一个工作表的内容复制到另一个工作表,而不是VBA或手动复制/粘贴,并让它跳过空白行?

时间:2015-01-02 15:02:43

标签: excel-2007

使用工作表B中的公式,我想自动仅将包含数据的行从工作表A复制到工作表B.结果应该是工作表A中没有空白行的所有数据,如下所示。

 WORKSHEET A
              A            B          C           D
 Row 1                  Worksheet A Title
 Row 2     Header A    Header B    Header C    Header D
 Row 3       31           32         33          34
 Row 4       41           42         43          44
 Row 5
 Row 6       61           62         63          64
 Row 7                        
 Row 8       81           82         83          84



 WORKSHEET B
              A            B          C           D
 Row 1                  Worksheet B Title
 Row 2     Header A    Header B    Header C    Header D
 Row 3       31           32         33          34
 Row 4       41           42         43          44
 Row 5       61           62         63          64
 Row 6       81           82         83          84
 Row 7                        
 Row 8       

如果可能(非要求),我希望能够通过从工作表C中复制非空行并将它们添加到工作表B中的第一个可用行来继续此过程。

 WORKSHEET C
              A            B          C           D
 Row 1                  Worksheet C Title
 Row 2     Header A    Header B    Header C    Header D
 Row 3     
 Row 4       401         402         403         404
 Row 5       501         502         503         504
 Row 6       
 Row 7       701         702         703         704                 
 Row 8     



 WORKSHEET B UPDATED
              A            B          C           D
 Row 1                  Worksheet B Title
 Row 2     Header A    Header B    Header C    Header D
 Row 3       31           32         33          34
 Row 4       41           42         43          44
 Row 5       61           62         63          64
 Row 6       81           82         83          84
 Row 7      401          402        403         404                  
 Row 8      501          502        503         504
 Row 9      701          702        703         704

提前感谢您的帮助!

戴夫

1 个答案:

答案 0 :(得分:0)

Sheet1 中,单元格 E2 输入:

1

在单元格 E3 中输入:

=IF(COUNTA(A3:D3)<>0,MAX(E1:E2)+1,"")

并复制下来。我们看到:

enter image description here

注意所有&#34;好&#34;行按顺序标记。

Sheet2 中,单元格 A2 输入:

=INDEX(Sheet1!A$2:A$8,MATCH(ROWS(1:$1),Sheet1!$E$2:$E$8,0),0)

向下和横向复制。在 Sheet2 中,我们看到:

enter image description here

修改#1:

要解决第一个问题,请替换:

=IF(COUNTA(A3:D3)<>0,MAX(E1:E2)+1,"")

=IF(COUNTA(A3:D3)<>0,MAX(E$1:E2)+1,"")
在复制之前

第二次问题需要调整为:

第二张中的 8