将单元格的内部颜色从单元格复制到活动单元格

我有一个电子表格,顶部有一个颜色键。 用户需要根据颜色键手动设置电子表格中各个单元格的颜色。

理想情况下,我希望用户能够突出显示/select电子表格中的一个或多个单元格,然后只需点击一下颜色键单元格就可以将其内部颜色复制到单元格中他们最初select。

示例:用户select单元格A17:D17,并希望通过点击单元格A2,将这些单元格的内部颜色设置为与单元格A2的内部颜色相同。

然后,他们可能想通过点击单元格A3,将A17:D17的颜色更改为与A3相同的颜色

有这样做的macros/自定义函数/combobox的方式?

任何build议将不胜感激

最好的问候,本

为每个颜色添加一个命令button来做到这一点。 让用户select单元格,然后单击button将select的.ColorIndex属性更改为button的.ColorIndex

@一个。 Scagnelli的想法是更好地实现你所需要的。 只是有一堆颜色button改变颜色索引。

之所以跟踪之前的select是一个痛苦。 当你做出新的select时,我不认为Excel知道你最后的select是什么。 你可以通过设置一个全局variables来记住每一个最后的select。 这不是很好或build议..但它是可能的。

在工作表中,您需要如下所示的内容。

 Option Explicit Dim lastAddress As String Private Sub Worksheet_SelectionChange(ByVal Target As Range) If lastAddress <> "" Then Range(lastAddress).Formula = "Was selected before" Range(lastAddress).Interior.ColorIndex = 6 End If lastAddress = Target.Address End Sub 

注意:你需要testing当前的select是否是你的颜色单元格之前发射.Interior.ColorIndex但我会留给你:)

其实有一个内置的方式做到这一点,但我不知道你的用户是否会喜欢或不…如果他们不然后添加一个自定义命令button来复制colorIndex属性。

手动过程:

  1. 复制包含颜色键的单元格。

  2. 点击你想添加颜色的新单元格,然后右键点击select粘贴

  3. 从出现的窗口中select格式选项,然后单击确定。

颜色,格式等被复制没有价值。