Vba: как использовать «если не пусто»
Вы можете использовать Not IsEmpty в VBA, чтобы проверить, не пуста ли ячейка.
Вот пример того, как вы можете использовать этот синтаксис в макросе:
Sub IfNotBlank()
Dim i As Integer
For i = 2 To 13
If Not IsEmpty(Range(" A " & i)) Then
Result = “ Cell is Not Empty ”
Else
Result = “ Cell is Empty ”
End If
Range(" B " & i) = Result
Next i
End Sub
В этом конкретном примере проверяется, не пуста ли каждая ячейка в диапазоне A2:A13 , а затем печатается «Ячейка не пуста» или «Ячейка пуста» для каждой соответствующей ячейки в диапазоне B2:B13 .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: как использовать «Если не пусто» в VBA
Предположим, у нас есть следующий список названий баскетбольных команд в Excel:
Предположим, мы хотим проверить, не пуста ли каждая ячейка в диапазоне A2:A13 , а затем отобразить результаты в соответствующих ячейках диапазона B2:B8 .
Для этого мы можем создать следующий макрос:
Sub IfNotBlank()
Dim i As Integer
For i = 2 To 13
If Not IsEmpty(Range(" A " & i)) Then
Result = “ Cell is Not Empty ”
Else
Result = “ Cell is Empty ”
End If
Range(" B " & i) = Result
Next i
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Столбец B сообщает нам, пуста ли каждая из соответствующих ячеек в столбце A.
Вы также можете использовать следующий макрос, чтобы просто вернуть само название команды в столбце B, если значение не пустое в столбце A:
Sub IfNotBlank()
Dim i As Integer
For i = 2 To 13
If Not IsEmpty(Range(" A " & i)) Then
Result = Range(" A " & i).Value
Else
Result = " Empty "
End If
Range(" B " & i) = Result
Next i
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Столбец B теперь возвращает название команды в столбце A, если ячейка не пуста.
Примечание . Полную документацию по методу VBA IsEmpty можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: как подсчитать вхождение символов в строку
VBA: как проверить, содержит ли строка другую строку
VBA: формула «Если» ячейка содержит»