I need to change the level of each student if they passed two criteria. I wish to change the value inside the level column, but if it's not possible maybe put the changes next to the column is still accepted.
| NIP | Name | Math Score | English Score | Level |
|---|---|---|---|---|
| 1234 | Ariana | 75 | 75 | Level 1 |
| 1235 | Brian | 80 | 85 | Level 2 |
| 1236 | Charlie | 75 | Level 3 |
Criteria 1 = Math Score; Criteria 2 = English Score
If both criteria cells is filled with values (regardless what's the score), then the student will be promoted to the next level.
Example Ariana will be Level 2 and Brian will be Level 3
While, Charlie's "D" column is not a subject to changes because criteria 1 and 2 are not met.
note: I want the code to apply on visible cells only because I'll use filter on the level column

you could use
SpecialCells()method ofRangeobject to filter visible and not empty cells in cascadeyou should then use a lot of nested If ... Then ... and check if there are any visible rows with not empty cells in columns 3 and 4
but the conscious use of
On Error Resume Nextstatement could simplify the matter