使用"如果" VBA中的语句或命令

时间:2016-10-28 20:05:52

标签: excel-vba if-statement vba excel

我需要帮助正确的格式和结构,以便在VBA中使用IF语句来让它在单元格中写出某些数字和值。

我在任何形式的编码方面都有零经验,所以我上面的措辞可能是无法辨认的。所以我只是解释一下我需要的东西。

我需要使用一次只能处理一行的宏来分配基于百分比的字母等级。因此,如果%是73.5,我需要让它旁边的单元格读取" C"当我使用键盘快捷键时,我在宏中分配并且无论%是什么都有这个功能。我知道我需要使用" If / Then / ElseIF"格式,但我根本无法弄清楚如何正确输入命令

1 个答案:

答案 0 :(得分:-2)

这里你需要做几件事

  1. 循环遍历您将要测试的单元格的循环
  2. 做出决定的if或case陈述
  3. 它看起来像:

    cb(null, {a:1, b:2,c:c});

    For Each testCell in Sheets("Sheet1").Range("A1:A20").Cells If testCell.value > .70 AND testCell.value < .80 Then testCell.Offset(,1).value = "C" ElseIf testCell.value > .60 AND testCell.value < .70 Then testCell.Offset(,1).value = "D" <and on and on to capture each of your potential grades> End IF Next testCell 是一个变量,它被赋予testCell IF Sheets("Sheet1").Range("A1:A20"). One cell at a time, 20 times total as it loops. Each time it is tested by the Offset(,1)`范围内每个单元格的值。

    但是,您可能会发现使用Index()和Match来管理它更容易,因此您不必使用vba进行操作。为此,请在另一张表(Sheet2)中创建一个表格,如:

    enter image description here

    然后,假设您的数字等级在statement and a value is written out in the cell one column over using the,您可以使用以下公式:

    A1