我正在寻找一种VBA或任何工作方式,甚至一个命令按钮,但4-5进程将被调用。
Call process1
Call process2
End Sub在一次点击中,对我来说似乎是不可能的,因为我在Excel中没有那么先进,但希望这个挑战对其他人来说是小菜一碟。任务是根据引用列AM中单元格的公式,按范围水平突出显示单元格。因此,"B8“是一个数量为100,需要除以出现在"AM3”上的分区数。现在"AM3“是6,所以从"C8”开始,6个单元格(合并为4s)将水平突出显示。"C9“是与"AM4”相关的,它的值为9,并将水平突出显示9个单元格(自合并后共36个单元格)。
就目前而言,这是我所应用的,但仅限于这一范围内:
Sub HighlightRangeOfCells()
Dim rng As Range
For Each rng In Range("C8:AL12")
If IsNumeric(rng.Value) Then
If rng.Value <> 0 Then
rng.Interior.Color = vbRed
End If
End If
Next rng
End Sub谢谢你的努力,如果可能的话,请回复。

发布于 2022-09-15 07:17:01
正如SSlinky所提到的,最好的方法是使用条件格式。我创建了一个简单的Excel表来解释如何做这样的事情:我把公式=COLUMN()<=$J1放在单元格"A1“中,我使用这个公式进行条件格式化,我拖到右边,然后拖下来。
看上去是这样的:

正如您所看到的,当单元格的列号以某种方式与列"J“的值相对应时,它们会被高亮显示。你所需要做的就是把"J“替换成"AM”,并按照你认为合适的方式描述它们的对应关系。
关于您的信息:在公式中,我使用的是引用$J1,这意味着在拖放时,行号可能会改变,但是所引用的列总是需要"J“(它是绝对和相对单元格引用的组合)。
https://stackoverflow.com/questions/73726251
复制相似问题