在 Excel 中對前 x 行進行條件格式設置,無論篩選或排序如何

在 Excel 中對前 x 行進行條件格式設置,無論篩選或排序如何

我試圖找到一種方法來輕鬆識別表列中的前十行,無論它是如何排序/過濾的。有沒有辦法使用條件格式來突出顯示這些單元格?

期望結果的範例...

樣本資料:

product price   units   code
Item02  15.97   2191    7UQC
Item05  12.95   1523    TAAI
Item13  9.49    1410    LV9E
Item01  5.69    591     6DOY
Item04  15.97   554     ZCN2
Item08  10.68   451     2GN0
Item03  13.95   411     FP6A
Item07  25.45   174     PEWK
Item09  14.99   157     B5S4
Item06  18      152     XJ4G
Item10  11.45   148     BY8M
Item11  16.99   66      86C2
Item12  24.5    17      X31K
Item14  24.95   14      QJEI
  1. price在按突出顯示的前 10 個產品排序時,與下一個範例中的不同。

按價格排序的產品表

  1. Item12過濾掉、Item05和後,前 10 個可見產品將會反白顯示Item08

已過濾掉第 12、05 和 08 項的產品表

答案1

在條件格式中使用此公式:

=SUBTOTAL(3,$A$2:$A2)<11

確保它適用於整個資料集。

![在此輸入影像描述

此公式傳回相對於可見行號的行號。因此,當一行被隱藏時,隱藏行下方的行將傳回比其應有的值大的行。

要查看它是如何工作的,請將其放在SUBTOTAL(3,$A$2:$A2)空列中。然後過濾表格並觀察數字的變化。

3的是 COUNTA() 函數,該函數將對所有非空白單元格進行計數。

小計旨在處理經過篩選以僅返回可見資料的資料。

因此,公式只會計算非空的可見單元格。

答案2

有一個很好的答案這裡

基本上你添加一個有公式的輔助列

=SUBTOTAL(3, $A$2:A2)

這將為您提供 A2 和目前行之間可見儲存格的計數。然後你會反白顯示 A 列並使用條件格式,例如

=$E1<10 使用您想要的格式,它應該突出顯示前 10 行

相關內容