Excel VBA: оператор If на основі значення комірки (2 практичних приклади)

  • Поділитися Цим
Hugh West

У цій статті я покажу вам, як можна використовувати Якщо заява в VBA в Excel на основі значення комірки.

Excel VBA: оператор If на основі значення комірки (Швидкий перегляд)

 Sub If_Statement_Based_On_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub 

Завантажити Практичний посібник

Завантажте цей практичний посібник, щоб потренуватися, поки ви читаєте цю статтю.

Оператор If на основі значення комірки.xlsm

Оператор Якщо на основі значення комірки в Excel VBA

Тут у нас є робочий аркуш, який містить назви та позначення деяких учнів школи на іспиті.

Наша мета - навчитися користуватися Якщо заява в Excel VBA на основі значення комірки з цього набору даних.

1. оператор If на основі значення однієї комірки в Excel VBA

Перш за все, ми навчимося використовувати оператор If, заснований на значенні однієї комірки.

Для прикладу, спробуємо подивитися, чи склала Наталія Остін іспит чи ні, тобто, чи з'явилася відмітка в клітинці C3 більше, ніж 40 чи ні.

Колонка D містить результат студентів. Тобто, якщо комірка C3 містить позначку більше 40, комірка D3 буде містити "Прийнято" В іншому випадку він буде містити "Не вдалося" .

Ми використаємо VBA Діапазон об'єкт для створення цього Якщо заява на основі значення комірки.

На сьогоднішній день, на жаль, це не так. VBA Код для цього буде таким:

⧭ код VBA:

 Sub If_Statement_Based_On_a_Single_Cell() If Range("C3").Value>= 40 Then Range("D3").Value = "Passed" Else Range("D3").Value = "Failed" End If End Sub 

⧭ Вихід:

Запустіть код з файлу Виконати Sub / UserForm інструмент в VBA на панелі інструментів.

Це зробить клітину D3 містити "Не вдалося" як позначка в комірці C3 менше, ніж 40 ( 32 ).

2. оператор "Якщо" на основі значень діапазону комірок в Excel VBA

Ви також можете скористатися Якщо заява на основі значень діапазону комірок у VBA Ви можете використовувати цикл для цього.

Наприклад, тут ми можемо дізнатись результат усіх студентів з одним кодом. Для цього проведемо ітерацію через цикл яка перевірить всі комірки в діапазоні C3:C12 і повертає відповідний результат, "Прийнято" або "Не вдалося" .

На сьогоднішній день, на жаль, це не так. VBA Код для цього буде таким:

⧭ код VBA:

 Sub If_Statement_Based_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 

⧭ Вихід:

Запустіть код з файлу Виконати Sub / UserForm інструмент в VBA панель інструментів. Вона повернеться "Прийнято" для оцінок, які перевищують 40 та "не пройшов" для тих, що мають менше, ніж n 40 .

Важливі моменти для запам'ятовування

Тут я показав Якщо заява Але при бажанні ви можете використовувати декілька умов в межах одного Якщо заява .

Якщо ви використовуєте АБО введіть декілька умов, з'єднайте їх сполучником АБО .

А якщо ви використовуєте І введіть декілька умов, з'єднайте їх сполучником І .

Наприклад, щоб перевірити, чи є позначка в комірці B3 більше, ніж 40 і менше ніж 50 чи ні, використовуйте:

 If (Range("C3").Value> 40 Or Range("C3").Value <50) Then 

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.