Зміст
У цій статті я покажу вам, як можна використовувати Якщо заява в 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