具有非連續命名範圍的 Excel COUNTIF

具有非連續命名範圍的 Excel COUNTIF

我正在使用資料驗證公式來隱藏使用過的名稱,如下所示:=IF(COUNTIF(DrawUsed, [Players])>=1, "", [Players]),其中DrawUsed是命名範圍。問題是我的表看起來像這樣:

在此輸入影像描述

我需要這些Blind Draw Team列作為 的第一個參數COUNTIF,因為如果在第一列中使用名稱,則該名稱不應可用於第三Blind Draw Team列。問題是這個公式,定義了命名範圍,=Blind!$B$2:$B$27,Blind!$I$2:$I$27,Blind!$P$2:$P$27只會導致#VALUE!錯誤。

我無法定義連續的範圍,因為Buyer列應該不是取決於 的值Blind Draw Team,也不應該隱藏使用過的名稱。

有人有建議嗎?

答案1

我透過定義 3 個獨立的範圍和這個公式解決了這個問題:

=IF(
    OR(
        COUNTIF(BlindUsed1, [Players])>=1,
        COUNTIF(BlindUsed2, [Players])>=1,
        COUNTIF(BlindUsed3, [Players])>=1
    ),
    "", 
    [Players]
)

為了易讀性而返回。

更新

解決方案2:INDIRECT可以處理不連續的範圍。我的範圍其實只是一堆不連續的單元格。我這樣定義它:

=INDIRECT(
    {
        "Sunday!$F$7",
        "Sunday!$F$15",
        "Sunday!$F$23",
        "Sunday!$F$31",
        "Sunday!$F$39",
        "Sunday!$M$7",
        "Sunday!$M$15",
        "Sunday!$M$23",
        "Sunday!$M$31",
        "Sunday!$M$39",
        "Sunday!$T$7",
        "Sunday!$T$15",
        "Sunday!$T$23",
        "Sunday!$T$31",
        "Sunday!$T$39"
    }
)

然後COUNTIF對範圍進行處理:=COUNTIF(SundayCaptains,[Player])。此方法的唯一缺點是,如果重新命名工作表,值將不會更新。

相關內容