如何在Excel中过滤时识别标题行?

时间:2014-12-03 03:45:03

标签: excel

当我使用此API:Range.AutoFilter时,它可以过滤整个工作表。即使我没有指定标题,Excel也可以猜测我的标题行。我的问题是:如何实现它?我无法弄清楚猜测标题行的规则。

1 个答案:

答案 0 :(得分:0)

我昨天自己解决了。这是主要规则:

  1. 如果您没有指定要过滤的范围,Excel会找出哪一行 是具有值的单元格的第一行。我们可以将其标记为row1。

  2. 识别整行中是否有空单元格。 (EXCEL     将剪切一个名为UsedRange的数据范围,表示范围     存在一个真正的价值。该列首先从UsedRange开始     行,最后一列是UsedRange的最后一列,你可以     使用API​​检查usedRange:sheet.UsedRange.select)。

  3. 如果row1中有空白单元格,则比较row2和row3,找出答案 无论他们怎样     具有相同的单元格格式。如果没有,标题行是row2,否则,     标题行是row1。

  4. 如果第1行中没有任何空白单元格,     比较row1和row2之间的单元格格式。这里是     伪代码:

  5. 打字英语太难了,编写代码更容易....

    if (Row1's cell format == Row2's cell format)
    { 
           if (row2's cell format == row3's cell format)
                  header_row = row1;
           else 
                  header_row = row2;
    }
    else 
    {
           header_row = row1;
    }