我想根据单元格值查找成绩

时间:2019-01-07 11:31:34

标签: excel vba

enter image description here

我正在使用以下代码,但仅显示“失败”而不是评分。

Sub TABLEGRADESCELLREF()

Worksheets("TABLE").Activate
Range("C61").Select

Do Until ActiveCell.Offset(0, -2).Value = ""
ActiveCell.Formula = "=IF(R[0]C2=R61..CF DRT56Y7"
ActiveCell.Offset(1, 0).Select

Loop

End Sub

3 个答案:

答案 0 :(得分:0)

这是适用于您的确切示例的代码。由于您没有提供更多详细信息,因此您可以根据自己的需要调整代码。希望对您有帮助。

@AutoMatter

答案 1 :(得分:0)

You can use Vlookup function to get your desired result

Please see the inputs from the below picture

enter image description here

then, try with below code

Sub TABLEGRADESCELLREF()
    Dim i As Variant
    Dim lastrow As Variant
    Worksheets("TABLE").Activate
    lastrow = Range("C61").End(xlDown).Row
    For i = 61 To lastrow
        Range("E" & i).Value = Application.WorksheetFunction.VLookup(Range("D" & i), Range("$J$61:$L$66"), 3, True)
    Next i
End Sub

答案 2 :(得分:0)

仅使用公式的解决方案

  1. 将您的成绩/分数从最低分为最高:
    (0, 50, 60, 70, 90)这对于MATCH来说是必需的。 也只能使用没有>=符号的值。
  2. 使用以下公式计算一年级:
    =INDEX($I$60:$I$64,MATCH(B61,$H$60:$H$64,1))
  3. 将公式复制到其他年级。

enter image description here

结果是
enter image description here