请耐心等待,因为我是VBA的新手。请参阅所附图像。
我正在根据前5个单元格是否为空白,从单元格G2开始寻找用“是”或“否”填充“摘要”表中单元格的代码。请注意,“摘要”表中的数据是从“原始数据”表中提取的。
例如,雇员1:“摘要”表上的单元格G2将显示“否”,因为“原始数据”!B2:F2范围内的所有单元格都不为空。与H2相同,因为“原始数据”!C2:G2中的所有单元格都不为空。 I2将显示“是”,因为在“原始数据”范围内有一个空白单元格!D2:H2。
对于在A列中有数据的每一行,此操作都会继续。
预先感谢您,如果我对它的解释不够充分,请告诉我, 凯文
答案 0 :(得分:0)
在摘要表的G2中输入以下公式:
=IF(COUNT('Raw Data'!B2:F2)=5,"No","Yes")
然后您可以根据需要将其拖到右侧(此后向下)。
这是一个小的修改,不对空行显示“是”:
=IF('Raw Data'!B2="","",IF(COUNT('Raw Data'!B2:F2)=5,"No","Yes"))
答案 1 :(得分:0)
已经过测试,现在一切都可以正常工作,不确定是否仍然需要答案,但是“摘要”选项卡已应用了一些条件格式,如果是,则明显突出绿色,如果不是,则突出红色。数据标签我输入了随机值,但是除非有我不知道的东西,否则应该没关系。
Sub Yes_No()
Dim lastrow As Long
Dim lastcol As Long
Dim wb As Workbook
Dim ws As Worksheet
Dim ws2 As Worksheet
Set wb = ActiveWorkbook
Set ws = wb.Sheets("Summary")
Set ws2 = wb.Sheets("Raw Data")
lastcol = ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column
lastrow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
For i = 2 To lastrow
For j = 7 To lastcol
If ws2.Cells(i, j - 1) <> "" And _
ws2.Cells(i, j - 2) <> "" And _
ws2.Cells(i, j - 3) <> "" And _
ws2.Cells(i, j - 4) <> "" And _
ws2.Cells(i, j - 5) <> "" Then
ws.Cells(i, j).Value = "Yes"
Else
ws.Cells(i, j).Value = "No"
End If
Next j
Next i
End Sub