我可以在excel中创建自我更新模块吗?

时间:2016-05-31 06:38:19

标签: excel vba module

所以我有一个数据列需要简化。

ColumnA      ColumnB  

Cyan          Blue  
Navy          Blue  
Forest        Green  

我想写一个模块,它会问我第一次遇到青色时该怎么办,我必须输入蓝色。但是对于此后遇到青色的所有情况,相应的列B需要为蓝色。

1 个答案:

答案 0 :(得分:0)

Sub SIMPLIFY()
    RECORD_COUNT = Range("A" & Rows.Count).End(xlUp).Row
    For i = 1 To RECORD_COUNT
        If WorksheetFunction.CountIf(Columns("A"), Range("A" & i)) > 0 Then
            RECORD_ROW = WorksheetFunction.Match(Range("A" & i), Columns("A"), 0)
            If Cells(RECORD_ROW, 2) <> Empty Then
                Cells(i, 2) = Cells(RECORD_ROW, 2)
            Else
                Cells(i, 2) = InputBox("Input Color for " & Cells(i, 1))
            End If
        End If
    Next i
End Sub

将上面的代码复制到工作表VBA。 代码等待“A”列中的任何更改并检查以前的数据。 如果它存在,它会自动输入颜色,或者当它是新的时它会要求颜色。