如果缺陷状态已准备好重新测试,则使用VBA宏对重复的行值进行拆分和着色

时间:2016-04-20 20:10:10

标签: excel vba excel-vba macros

enter image description here根据评论进行重新评论。

1.如果F栏中的状态=准备重新测试或通过

2.然后,如果C列中有任何值,则采用/拆分C列中的重复ID,用逗号分隔(,)

3.搜索A列中的重复ID并用绿色标记

离。在行1中,缺陷ID为JIRA1,有2个重复的ID ALM3和ALM7。所以我需要在A列中查找这些值.4。如果这些缺陷(ALM3和ALM7)的状态未关闭,那么我需要用绿色标记整行

Sub findduplicateColoreIt()

$('.element').width();

1 个答案:

答案 0 :(得分:1)

我将您的意见解释为:

  1. 第I列包含有关当前状态的信息。它将包含某些关键词,例如"已关闭","新","被阻止","打开"。现在,你有一个新的关键词" Passed" (我猜)。
  2. 每个关键字都有相应的颜色,用于突出显示同一行中的某些单元格。如果是新关键词"通过",您希望颜色为绿色。
  3. 我正在解释你的问题:如何修改我已有的代码,当我找到关键词时,将单元格颜色设为绿色"通过"?

    您的代码经过修改,以解决问题,在下面。

    Private Sub Worksheet_Activate()
        Dim rng As Range, cell As Range
        Set rng = Range("I2:I250")
        For Each cell In rng
        Select Case cell.Offset(0, 0).Value
           Case "Closed"
               cell.Resize(1, 12).Interior.ColorIndex = 4
           Case "New"
               cell.Resize(1, 12).Interior.ColorIndex = 31
           Case "blocked"
               cell.Resize(1, 1).Interior.ColorIndex = 50
           Case "open"
               cell.Resize(1, 1).Interior.ColorIndex = 27
           Case "Passed"
               cell.Resize(1, 1).Interior.ColorIndex = 4
           Case Else
               cell.Resize(1, 1).Interior.ColorIndex = 3
           End Select
         Next
     ' if the "Winner" Defect passed retest, now "Loser" can retest which should be green in color , i havee multiple Losed defect id associated to one id separated with (,), so if Winner is passed i need to make all loser to green color
    End Sub
    

    我根据默认调色板as documented by MS选择数字4来表示绿色。由于您已使用数字4作为"已关闭",您可能已经使用绿色突出显示,或者您可能正在使用自定义调色板。