【问题标题】:How to find how many times a certain string appears in the whole Excel workbook in certain columns?如何查找某个字符串在整个Excel工作簿的某些列中出现了多少次?
【发布时间】:2022-11-17 14:09:28
【问题描述】:

工作簿有 52 张。我要搜索的数据位于每张工作表的 F、I、L ... AM 列中。我一定不计算任何其他列中的数据。数据是三个字符的字符串,例如 NOR 或 HEI。 我如何找到(例如)NOR 在该非相邻范围内出现的次数?

我使用函数 countif。我尝试命名非相邻范围,但无法正常工作。我试过 sum(countif(distinct(arguments))) 但无法让它工作。

【问题讨论】:

    标签: excel range countif


    【解决方案1】:

    如果您首先创建一个垂直的所有工作表名称的列表,称为图纸列表,例如,您可以使用:

    =LET(
        ξ, COLUMN($F:$AM),
        ζ, SUBSTITUTE(ADDRESS(1, FILTER(ξ, MOD(ξ - MIN(ξ), 3) = 0), 4), 1, ""),
        SUMPRODUCT(
            COUNTIF(INDIRECT("'" & SheetList & "'!" & ζ & ":" & ζ), "ABC")
        )
    )
    

    将末尾的“ABC”更改为您要搜索的任何字符串。

    编辑:对于旧版本的 Excel:

    =SUM(COUNTIF(INDIRECT("'" & TRANSPOSE(SheetList) & "'!" &
    SUBSTITUTE(REPT(SUBSTITUTE(ADDRESS(1,
    MODE.MULT(IF(MOD(COLUMN($F:$AM) -
    MIN(COLUMN($F:$AM)),3) = {0;0},
    COLUMN($F:$AM))),4),1,"") & ":",2),":","",2)),"ABC"))
    

    这很可能需要提交CTRL+SHIFT+ENTER

    【讨论】:

    • 我印象深刻,谢谢@JosWoolley。我还没有得到它的工作(可能是英语 -> 芬兰语的翻译问题)但现在我有有趣的时光,因为我正在学习你的所有代码!
    • 我发现了问题。我有较旧的 Excel,它没有 FILTER 功能。
    • @OhtoNordberg 为早期版本的 Excel 添加了替代方案。
    猜你喜欢
    • 1970-01-01
    • 2021-02-25
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多