首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在不同的单元格中计数标记并与它们相加

在不同的单元格中计数标记并与它们相加
EN

Stack Overflow用户
提问于 2017-02-03 03:35:08
回答 2查看 1.5K关注 0票数 0

因此,我在Excel电子表格中有很多行,其中包括不同的内容。基本上看起来是这样的:

代码语言:javascript
运行
复制
  Element 1    |  Element 2    |  Tags
------------------------------------------------
  Example 1.1  |  Example 1.2  |  tag1,tag2,tag5
  Example 2.1  |  Example 2.2  |  tag2,tag4,tag6
  Example 3.1  |  Example 3.2  |  tag1,tag3,tag6
  Example 4.1  |  Example 4.2  |  tag1,tag3,tag5
  Example 5.1  |  Example 5.2  |  tag1,tag4,tag5

所以,忽略前两栏中的内容,我想问的是,这并不重要。但是,最后一列(标记),我想要的是用标记计数所有行/单元格,然后把它加起来,所以我得到(在本例中)如下:

代码语言:javascript
运行
复制
tag1: 4
tag5: 3
tag2: 2
tag3: 2
tag4: 2
tag6: 2

所以原则上,只要找出每个标签在所有选定的单元格中有多少个,然后把它加起来,然后吐出每个标签的数目。这能在Excel中完成吗?

提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-03 03:54:40

我将使用数组公式来执行以下操作:

代码语言:javascript
运行
复制
=SUM(IF(ISNUMBER(SEARCH("tag1", C:C)),1,0))

输入公式后,需要按ctrl + shift + Enter键使公式成为数组公式。Excel将自动添加花括号{.}以指示它和数组公式。

这假设您的标记在c列中,如您的示例所示,您可以引用一个单元格来表示"tag1“。

代码语言:javascript
运行
复制
=SUM(IF(ISNUMBER(SEARCH(A10, C:C)),1,0))

A10有标记值的地方

为了获得标签列表,下面的VBA应该完成这个任务(这个循环遍历选定的范围,并将结果写入一个称为标记的工作表,您可能需要创建这个工作表):

代码语言:javascript
运行
复制
Sub GetTags()
    Dim dict As Scripting.Dictionary
    Set dict = New Scripting.Dictionary
    '
    Dim cellTags() As String
    Dim tag As Variant
    Dim cell As Range
    Dim selectedRange As Range
    Set selectedRange = Application.Selection

    For Each cell In selectedRange.Cells
        cellTags = Split(cell.Value, ",")
        For Each tag In cellTags
            If Not dict.Exists(Trim(tag)) Then
                dict.Add Trim(tag), Trim(tag)
            End If

        Next tag
    Next cell

    Dim StartRow, i As Long
    StartRow = 1
    For i = 0 To (dict.Count - 1)
        ActiveWorkbook.Sheets("Tags").Range("A" & i + StartRow).Value = dict.Items(i)
    Next
End Sub
票数 1
EN

Stack Overflow用户

发布于 2017-02-03 03:56:48

您可以使用COUNTIF():

代码语言:javascript
运行
复制
=COUNTIF(C:C,"*" & "tag1" & "*")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42016325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档