Turinys
Šiame straipsnyje parodysiu, kaip galite naudoti Jei teiginys svetainėje VBA "Excel" programoje pagal ląstelės vertę.
"Excel VBA": If teiginys pagal ląstelės vertę (greitas vaizdas)
Sub If_Statement_Based_On_on_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub
Atsisiųsti praktikos sąsiuvinį
Atsisiųskite šį pratybų sąsiuvinį, kad galėtumėte atlikti pratimus skaitydami šį straipsnį.
Jei teiginys pagal ląstelės vertę.xlsmJei teiginys pagal ląstelės vertę "Excel VBA
Čia turime darbalapį, kuriame yra pavadinimai ir ženklai kai kurių mokyklos mokinių egzaminą.
Mūsų tikslas - išmokti naudoti Jei teiginys "Excel" programoje VBA pagal šio duomenų rinkinio langelio vertę.
1. "Excel" VBA programoje "If" teiginys pagal vienos ląstelės vertę
Pirmiausia išmoksime naudoti teiginį If pagal vienos ląstelės reikšmę.
Pavyzdžiui, pabandykime patikrinti, ar Natalija Austin išlaikė egzaminą, ar ne, t. y. ar ląstelėje esantis pažymys C3 yra didesnis už 40 arba ne.
Stulpelis D yra studentų rezultatas. Tai yra, jei ląstelėje C3 yra žymuo, didesnis nei 40, ląstelė D3 bus "Priimta" . Priešingu atveju jame bus "Nepavyko" .
Naudosime VBA Diapazonas objektą, kad sukurtumėte šį Jei teiginys pagal langelio vertę.
Svetainė VBA kodas bus toks:
⧭ VBA kodas:
Sub If_Statement_Based_On_on_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub
⧭ Išėjimas:
Paleiskite kodą iš Paleisti sub / UserForm įrankis VBA įrankių juostą.
Dėl to ląstelės D3 yra "Nepavyko" , kaip ląstelės ženklas C3 yra mažesnis nei 40 ( 32 ).
2. "If" teiginys pagal ląstelių intervalo vertes "Excel VBA" programoje
Taip pat galite naudoti Jei teiginys pagal langelių diapazono reikšmes, esančias VBA . Galite naudoti for-loop šiam tikslui.
Pavyzdžiui, čia galime sužinoti visų mokinių rezultatą naudodami vieną kodą. for-loop bus patikrintos visos diapazono ląstelės C3:C12 ir grąžinti atitinkamą rezultatą, "Priimta" arba "Nepavyko" .
Svetainė VBA kodas bus toks:
⧭ VBA kodas:
Sub If_Statement_Based_On_On_a_Range_of_Cells() For i = 1 To Range("C3:C12").Rows.Count If Range("C3:C12").Cells(i, 1).Value>= 40 Then Range("D3:D12").Cells(i, 1).Value = "Passed" Else Range("D3:D12").Cells(i, 1).Value = "Failed" End If Next i End Sub
⧭ Išėjimas:
Paleiskite kodą iš Paleisti sub / UserForm įrankis VBA įrankių juostą. Ji grąžins "Priimta" ženklams, kurie yra didesni nei 40 , o "Nepavyko" - tiems, kurie yra mažiau nei n 40 .
Dalykai, kuriuos reikia prisiminti
Čia parodžiau Jei teiginys su viena sąlyga. Tačiau, jei norite, galite naudoti kelias sąlygas Jei teiginys .
Jei naudojate ARBA įvesti kelias sąlygas, sujungti jas jungtuku ARBA .
Jei naudojate IR įvesti kelias sąlygas, sujungti jas jungtuku IR .
Pavyzdžiui, norėdami patikrinti, ar ląstelėje B3 yra didesnis už 40 ir mažiau nei 50 ar ne, naudokite:
If (Range("C3").Value> 40 Or Range("C3").Value <50) Then