编写公式列出与交易金额匹配的所有条目

编写公式列出与交易金额匹配的所有条目

我正在尝试编写一个公式,以在蓝色单元格中以黄色突出显示的 5 个 GL 行项目列出,因为它们都共享相同的“Trans Ref Debit Total”。我可以使用 countif 公式获取匹配项的数量,但我基本上想将 GL 条目连接成一个字符串,如下所示:

“GL10_171094 GL10_171096 GL10_171098 GL10_171100 GL10_171102”

有什么建议吗?

电子表格

答案1

您也可以使用这个简单制作的 UDF。

要存储它,右键单击“工作表”选项卡,单击“查看代码”,然后将该代码作为模块插入。

Function ConcatenateIf(CriteriaRange As range, Condition As Variant, ConcatenateRange As range, Optional Separator As String = ",") As Variant

Dim xResult As String
On Error Resume Next

If CriteriaRange.count <> ConcatenateRange.count Then
    ConcatenateIf = CVErr(xlErrRef)
    Exit Function
End If

For I = 1 To CriteriaRange.count
    If CriteriaRange.Cells(I).Value = Condition Then
        xResult = xResult & Separator & ConcatenateRange.Cells(I).Value
    End If
Next I

If xResult <> "" Then
    xResult = VBA.Mid(xResult, VBA.Len(Separator) + 1)
End If

  ConcatenateIf = xResult

  Exit Function

End Function

注意:最后在单元格 B2 中写入此公式。

  =ConcatenateIf(C2:C16,C2,A2:A16)

答案2

您将此公式写入蓝色列。我假设是 B 列。

所以 B2 中的公式

=IF(C2<>C1,CONCATENATE(A2,", ",B2,),"")

将其拖到最后一行。使用您的数据,您将获得代码集每一行最后一行的组合值。

首先进入第 6 行,然后是第 7 至第 9 行,最后是第 14 行。

希望这对你有帮助。

相关内容