gpt4 book ai didi

excel - Excel 2007 VBA 中重叠范围的条件格式 - 错误?

转载 作者:行者123 更新时间:2023-12-04 21:06:36 24 4
gpt4 key购买 nike

目前正在尝试帮助on this question - 但偶然发现了一个非常奇怪的问题:

尝试在重叠范围(在 VBA 中)上添加条件格式时,Excel 2007 会产生错误 1004 或错误 9(下标超出范围)错误。我设法将错误的代码归结为:

子生产1004()
单元格.FormatConditions.Delete
Range("A1").FormatConditions.Add Type:=xlExpression, Formula1:="=1"
Range("A1:A2").FormatConditions.Add Type:=xlExpression, Formula1:="=1"
Range("A1:A2").FormatConditions(Range("A1:A2").FormatConditions.Count).Font.ColorIndex = 7
结束子

子生产错误9()
单元格.FormatConditions.Delete
Range("A1:A3").FormatConditions.Add Type:=2, Formula1:="=1"
Range("A1:A2").FormatConditions.Add Type:=2, Formula1:="=1"
Range("A1:A2").FormatConditions.Add Type:=2, Formula1:="=1"
Range("A1:A2").FormatConditions(Range("A1:A2").FormatConditions.Count).Font.ColorIndex = 3
结束子

这是导致错误的两个潜艇中的最后一行。该错误仅发生在 Excel 2007 中,它在 2010 中运行良好。

有人知道解决方法吗?

最佳答案

我可以在 Produce1004() 中看到一个问题:

A1 有 2 个格式条件,A2 有 1 个格式条件。

Range("A1:A2").FormatConditions.Count 给出 A1 的计数,A2 不存在 FormatConditions(2),因此出现错误。

但是对于 ProduceError9(),格式条件的数量对于 A1 和 A2 是相同的。

通过一些实验,我可以通过推断范围与格式条件一起存储来解释这一点(为 [A1].FormatCondition(3) 设置字体也失败)。
必须更改定义了格式条件的范围的格式。

据推测,Excel 2010 通过动态拆分格式条件来改善这种情况。

关于excel - Excel 2007 VBA 中重叠范围的条件格式 - 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14715989/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com