Excel 将单元格内部颜色从单击的单元格复制到活动单元格
我有一个电子表格,上面有一个彩色键。用户应根据颜色键手动设置电子表格中各个单元格的颜色 理想情况下,我希望用户能够在电子表格中突出显示/选择一个或多个单元格,然后单击颜色键单元格,将其内部颜色复制到他们最初选择的单元格 例如: 用户选择单元格A17:D17,只需单击单元格A2,即可将这些单元格的内部颜色设置为与单元格A2的内部颜色相同 然后,他们可能只需单击单元格A3,即可将A17:D17的颜色更改为与A3相同的颜色 是否有宏/自定义函数/组合框的方法来执行此操作 如有任何建议,将不胜感激 致以最良好的祝愿,Excel 将单元格内部颜色从单击的单元格复制到活动单元格,excel,vba,Excel,Vba,我有一个电子表格,上面有一个彩色键。用户应根据颜色键手动设置电子表格中各个单元格的颜色 理想情况下,我希望用户能够在电子表格中突出显示/选择一个或多个单元格,然后单击颜色键单元格,将其内部颜色复制到他们最初选择的单元格 例如: 用户选择单元格A17:D17,只需单击单元格A2,即可将这些单元格的内部颜色设置为与单元格A2的内部颜色相同 然后,他们可能只需单击单元格A3,即可将A17:D17的颜色更改为与A3相同的颜色 是否有宏/自定义函数/组合框的方法来执行此操作 如有任何建议,将不胜感激 致以
Ben为每种颜色添加一个命令按钮来完成此操作。让用户选择单元格,然后单击按钮将
选择的.ColorIndex
属性更改为按钮的.ColorIndex实际上有一种内置方法,但我不知道您的用户是否会喜欢它。。。如果没有,则添加自定义命令按钮以复制colorIndex属性
手动过程:
复制包含颜色键的单元格
单击要添加颜色的新单元格,然后右键单击“选择特殊粘贴”
从显示的窗口中选择“格式”选项,然后单击“确定”
颜色、格式等被复制而没有值。@A.斯加内利的想法是更好地实现您所需要的。只要有一堆改变颜色索引的颜色按钮
原因是跟踪以前的选择很痛苦。当你做出新的选择时,我认为Excel不知道你最后的选择是什么。您可以通过设置一个全局变量来记住每个最后的选择来解决这个问题。这不好,也不推荐。。但这是可能的
您需要在工作表中包含以下内容:
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
选项显式
将lastAddress设置为字符串
专用子工作表\u选择更改(ByVal目标作为范围)
如果最后地址为“”,则
范围(lastAddress)。公式=“以前已选择”
范围(lastAddress).Interior.ColorIndex=6
如果结束
lastAddress=Target.Address
端接头
注意:在启动.Interior.ColorIndex
之前,您需要测试当前选择是否是您的一个颜色单元格,但我将把它留给您:)这是实现OP想要的结果的一种更简单的方法。很好。一些有用的信息+1。以及对他人的友善和顺从。