[Excel][VBA]从另一个工作表中查找值并复制它';s背景
我被分配了一个简单的任务(起初我是这么认为的),监控excel的输入,如果有数字(比如0000068145),我需要用它的颜色突出显示。所以我创建了两张表Sheet1和数据库。在数据库中,我保存的数据如下: 因此,我使用了这段代码,每当我更改某些内容时,它都会调用:[Excel][VBA]从另一个工作表中查找值并复制它';s背景,excel,vba,Excel,Vba,我被分配了一个简单的任务(起初我是这么认为的),监控excel的输入,如果有数字(比如0000068145),我需要用它的颜色突出显示。所以我创建了两张表Sheet1和数据库。在数据库中,我保存的数据如下: 因此,我使用了这段代码,每当我更改某些内容时,它都会调用: Private Sub Worksheet_Change(ByVal Target As Range) End Sub 我曾考虑过使用Vlookup,但据我所知,它只能检索值 那么你是如何实现这种操作的呢 我不能使用Vloo
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
我曾考虑过使用Vlookup,但据我所知,它只能检索值
那么你是如何实现这种操作的呢
我不能使用Vlookup,我真的需要“数据库”和主表分开
对不起,我的英语不好我认为您使用
工作表\u Change
的方法是正确的
将以下内容放入表1
代码中:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim oCell As Range, oDBCell As Range
Dim dbWS As Worksheet
Dim lColor As Long
Set dbWS = ThisWorkbook.Worksheets("Database")
For Each oCell In Target
Set oDBCell = dbWS.Range("A:A").Find(what:=oCell.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not oDBCell Is Nothing Then
lColor = oDBCell.Interior.Color
oCell.Interior.Color = lColor
End If
Next
End Sub
您的“数据库”工作表必须命名为Database
现在,如果您将一些值放入数据库工作表
Sheet1
列a
中的单元格中,则颜色将从此数据库工作表中复制。您可以将ThemeColor
和TintAndShade
属性值与其对应的数字进行存储,然后只需查找这些数据并使用这些值为单元格着色。如果您不知道属性值,Record Macro是您的朋友。如何设置条件格式?我认为这是可能的。也许这样做更好?隐马尔可夫模型。。。但为每个数字设置条件是痛苦的。。。