首页 > 解决方案 > 如果多个单元格值为 True,则显示文本

问题描述

我想要 E3 列的公式取决于 A3、B3、C3 和 D3 列。如果多列显示是或单列显示是,我想以粉红色显示如下。需要结合显示“是”的 shctin 名称。E 列所需的公式。最终结果应显示为粉红色。

excel屏幕截图

标签: excelvba

解决方案


一探究竟

Sub Button1_Click()
    Dim x, y, z
    For x = 3 To 15
        For y = 1 To 4
            If UCase(Cells(x, y)) = "YES" Then
                z = z & "_" & Cells(2, y)
            End If
        Next y
        Cells(x, 5) = Right(z, Len(z) - 1)
        z = ""
    Next x
End Sub

User Defined Function,功能代码属于常规模块。

将此公式放在E3中并向下拖动,=Get_It(A3:D3,2)

Function Get_It(a As Range, Return_Row As String)
    Dim c As Range
    Dim s As String
    For Each c In a.Cells
        If UCase(c) = "YES" Then
            s = s & "_" & Cells(Return_Row, c.Column)
        End If
    Next c
    Get_It = Right(s, Len(s) - 1)
End Function

在此处输入图像描述


推荐阅读