Excel VBA 自动将单元格颜色设置为另一个单元格的颜色

问题描述 投票:0回答:1

嘿,我目前正在为我们公司的项目时间表创建一个动态日历。我输入开始日期和结束日期并通过条件格式标记正确的单元格,效果非常好。问题是我们有很多项目,我们想用颜色将它们分开。所以我当然可以为每个项目创建不同的格式规则。

但由于它必须对我的同事来说是用户友好的,我希望他们能够在开始时选择项目颜色,然后它也将应用于日历中的这些行。

我读到可以通过 VBA 根据另一个单元格颜色更改单元格颜色。但我不知道如何使用它来解决我的问题。另外,我对 vba 不太了解,所以如果你能向我解释解决方案代码,那就太棒了。

提前致谢:)

(这里有图方便理解) 示例 我还尝试只制作黑色边框并手动应用填充颜色,因为这也没有问题。但我无法填充具有条件格式的单元格,因此不起作用。

excel vba conditional-formatting
1个回答
0
投票

这当然是可能的,但您需要了解一些 VBA 才能做到这一点。我们不是代码编写服务,您必须自己编写。

例如,您可以通过包含以下内容来检索第一个工作表的单元格 A1 中使用的颜色:

Dim clr as Variant
clr = Worksheets(1).Range("A1").Interior.Color

如果您随后想要将第一个工作表上 B2:E5 范围内的条件格式中的第一个条件使用的颜色设置为相同的颜色,您将包括:

Worksheets(1).Range("B2:E5").FormatConditions(1).Interior.Color = clr

但这些只是构建块;您仍然必须围绕它们创建一个子例程,并决定通过什么事件触发该子例程。

© www.soinside.com 2019 - 2024. All rights reserved.