如何在 Excel VBA 中使单元格值以其他单元格值为条件?

Cou*_*awa 1 excel vba

我想在 Excel 中自动化一些事情,问题是我绝对不是程序员/脚本编写者,所以这对我来说都是陌生的。

我有一个列表,每次导入一组新值时长度都会发生变化,我想要的是程序检查 a 列(带有标题)中的某些值 IE:

Sub Grade()
    If Range("A2").Value = 2031 Then
        Range("H2").Value = "Grade 4"
        ElseIf Range("A2").Value = 2030 Then
        Range("H2").Value = "Grade 5"
        ElseIf Range("A2").Value = 2029 Then
        Range("H2").Value = "Grade 6"
        ElseIf Range("A2").Value = 2028 Then
        Range("H2").Value = "Grade 7"
        ElseIf Range("A2").Value = 2027 Then
        Range("H2").Value = "Grade 8"
        ElseIf Range("A2").Value = 2026 Then
        Range("H2").Value = "Grade 9"
        ElseIf Range("A2").Value = 2025 Then
        Range("H2").Value = "Grade 10"
        ElseIf Range("A2").Value = 2024 Then
        Range("H2").Value = "Grade 11"
        ElseIf Range("A2").Value = 2023 Then
        Range("H2").Value = "Grade 12"
              
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)

在单元格 H2 中输入值效果很好,但我现在希望它沿着列向下并检查其余部分,这就是我遇到困难的地方。问题是这次有 15 个条目,但当我再次执行此操作时,只能有 3 个条目。所以我希望让它检查该列并运行该脚本,只要单元格不为空。

Dom*_*que 5

我简单地将以下公式放入 H2 中:

="Grade " & (2035-B2)
Run Code Online (Sandbox Code Playgroud)

您可以轻松拖放到其他单元格并进行细微更改,甚至无需 VBA。

  • 也许添加一个“if”来检查它是否在“2023”和“2031”之间,以反映原始问题的“If”。 (2认同)