Excel:HLOOKUP(),其中跳过空白单元格

时间:2018-06-14 08:51:59

标签: excel concatenation

我正在尝试创建一个HLOOKUP()样式公式,如果它找到一个匹配的标题,其中所述行的报告值除外,它跳过它并查找具有相同标题的下一列同一排。

数据表的一个例子如下:

    Heading 1   Heading 2   Heading 1   Heading 4   Heading 5   Heading 1
Sample 1    1   7       13  19  
Sample 2        8       14  20  2
Sample 3        9       15  21  3
Sample 4    4   10      16  22  
Sample 5    5   11      17  23  
Sample 6        12  6   18  24  

如您所见,标题2,4和5下的数据都是单列,但标题1的值分为三列。

我需要最终的数据集如下:

    Heading 1   Heading 2   Heading 4   Heading 5
Sample 1    1   7   13  19
Sample 2    2   8   14  20
Sample 3    3   9   15  21
Sample 4    4   10  16  22
Sample 5    5   11  17  23
Sample 6    6   12  18  24

我已经在线完成了一些研究并找到了一个我认为可以用作VLOOKUP()的公式,我无法弄清楚它正在做什么以及当我在我的数据集的转置版本上尝试它时它并没有完全符合我的预期。我一直试图让它工作,并将其转换为相反的方向工作。公式如下:

{=INDEX($B$3:$G$8,SMALL(IF(INDEX($A$3:$G$8,,MATCH(B$11,$B$2:$G$2,0))<>"",IF($A$3:$A$8=$A12,ROW($A$3:$G$8)-ROW($A3)+$I12)),1),MATCH(B$11,$B$2:$G$2,0))}

此公式来自https://www.mrexcel.com/forum/excel-questions/689238-vlookup-match-but-ignore-blank-cells.html

在我的数据集的转置版本上运行公式会产生以下结果:

**Transposed data set**                             
    Sample 1    Sample 2    Sample 3    Sample 4    Sample 5    Sample 6        
Heading 1   1           4   5           
Heading 2   7   8   9   10  11  12      
Heading 1                       6       
Heading 4   13  14  15  16  17  18      
Heading 5   19  20  21  22  23  24      
Heading 1       2   3                   

**Result**                              
    Sample 1    Sample 2    Sample 3    Sample 4    Sample 5    Sample 6        
Heading 1   1   0   3   0   5   0       1
Heading 2   7   8   9   10  11  12      2
Heading 4   13  14  15  16  17  18      3
Heading 5   19  20  21  22  23  24      4

**Expected result**                             
    Sample 1    Sample 2    Sample 3    Sample 4    Sample 5    Sample 6        
Heading 1   1   2   3   4   5   6       
Heading 2   7   8   9   10  11  12      
Heading 4   13  14  15  16  17  18      
Heading 5   19  20  21  22  23  24      

我认为我可能过于复杂,并且必须有一个更简单的问题解决方案。任何人都能给我的任何帮助都会很棒。让我

谢谢!

1 个答案:

答案 0 :(得分:1)

这可能很简单,但为什么不简单地添加'Heading 1'列的值?空值被视为值0,到最后您将获得您要查找的值: - )