【问题标题】:Excel VBA: Find the maximum value in each row and highlight itExcel VBA:查找每行中的最大值并突出显示
【发布时间】:2014-06-12 06:21:18
【问题描述】:

我对 VBA 很陌生。现在我正在尝试为我做这两件事:1. 找到每个 row 中的最大值。 2. 突出显示黄色的最大值。执行这些操作,直到行为空。 在每一行中,单元格可能包含也可能不包含值。

我尝试使用条件格式来帮助我解决问题。但它似乎不起作用。

提前感谢您提供的任何帮助。

【问题讨论】:

  • 您对嵌套循环以及如何在 VBA 中编写代码有所了解吗?我很乐意为您指明正确的方向,但如果这是您第一次使用 VBA,您可能希望从教程开始,而不是要求某人为您完成手头的任务。
  • 这个问题似乎与帮助中心定义的范围内的编程无关。不包含任何代码的问题,以及要求代码解决方案的问题应该被删除......
  • 条件格式以突出显示行上的最大值:techrepublic.com/article/…
  • 非常感谢您的帮助,我正在寻找 VBA 代码。这种条件格式化方法非常适合我。
  • 大卫,我写了一些代码,不知道我们必须把代码放在这里才能提问。但是谢谢你的建议,我会记住我的下一个问题。

标签: vba excel


【解决方案1】:

试试这个:

Sub HiLighter()
    ActiveSheet.UsedRange
    Dim rA As Range, r, wf As WorksheetFunction
    Dim V As Variant, RWW As Range, rr As Range
    Set rA = Intersect(Range("A:A"), ActiveSheet.UsedRange)
    Set wf = Application.WorksheetFunction
    For Each r In rA
        Set RWW = Intersect(r.EntireRow, ActiveSheet.UsedRange)
        If wf.CountA(RWW) = 0 Then Exit Sub
        V = wf.Max(RWW)
        For Each rr In RWW
            If rr.Value = V Then
                rr.Interior.ColorIndex = 6
                GoTo getaway
            End If
        Next rr
getaway:
    Next r
End Sub

【讨论】:

  • 感谢加里的学生的好意帮助。我会试一试的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-22
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-17
相关资源
最近更新 更多