gpt4 book ai didi

excel - 获取范围内包含 "keyword"的所有值的列表(不包含空格)

转载 作者:行者123 更新时间:2023-12-04 20:46:10 25 4
gpt4 key购买 nike

如果我有一系列值,如何提取包含特定单词的所有值?

例如:

enter image description here

那有什么更好的吗

=IFERROR(INDEX(INDIRECT("A"&MATCH(D2,$A$2:$A$21,0)+2&":A21"),
MATCH("*"&$C$1&"*",INDIRECT("A"&MATCH(D2,$A$2:$A$21,0)+2&":A21"),0)),"")

我更喜欢公式而不是 VBA,但也可以随意发布 VBA 解决方案。

最佳答案

我把我学到的技巧在这里会有所帮助,没有 VBA 是必须的。将其放入 D2 并向下拖动:

{=INDEX(A:A,
SMALL(IF(ISNUMBER(SEARCH("*"&$C$1&"*",$A$2:$A$11)),
ROW($A$2:$A$11),
MAX(ROW($A$2:$A$11))+1)
,ROW()-1))}

注意:这是一个数组公式,需要使用 Control + Shift + Enter 输入。

解释:
  • index(<arr>, <nbr>)将得到我们找到的行的值;
  • search(<string>, <arr>)将在数组中找到所有匹配的值并且是数组公式的原因;
  • if如果匹配存在,函数将返回行号,如果没有设置默认行号,在这种情况下最后一个 + 1;和
  • 最重要的是small(<arr>, <n-th>)函数现在将返回开始的第 n 个最小行号,在这种情况下,单元格必须位于第 2 行,否则 -1需要改变。

  • 由 VBA 发起的非 VBA 数据透视:

    我发现数据透视表带来了很大的性能改进:
  • 像往常一样添加您的 Pivot,但放置 D1 的位置。
  • 您可以使用内置的包含或搜索功能

    enter image description here
  • Worksheet 上使用 VBA
    Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address = "$C$1" Then
    With Me.PivotTables("PivotTable2").PivotFields("name")
    .ClearAllFilters
    .PivotFilters.Add Type:=xlCaptionContains, Value1:=Target
    End With
    End If

    End Sub
  • 关于excel - 获取范围内包含 "keyword"的所有值的列表(不包含空格),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16239173/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com