Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Empty и ноль / 4 сообщений из 4, страница 1 из 1
01.08.2017, 09:58
    #39498165
ferzmikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Empty и ноль
Здравствуйте!

На ячейках бывает либо пусто, либо какие то значения включая ноль. Важно распознавать, что бывает пусто и бывает значение ноль. При считывании данных с ячеек empty будто превращается в ноль.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Option Explicit
Sub Макрос()
Dim Лист As Worksheet
Dim Ячейка As Range

Set Лист = ThisWorkbook.Sheets(1)
Set Ячейка = Лист.Cells(1, 1)

If Ячейка.Value = Empty Then
    MsgBox ("Будто ноль это Empty")
End If

End Sub



Как в VBA можно различать пусто и значение ноль?
...
Рейтинг: 0 / 0
01.08.2017, 10:04
    #39498170
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Empty и ноль
ferzmikk,

Код: vbnet
1.
IsEmpty(activecell.Value)


даст False, если в ячейке хоть что-то записано.
...
Рейтинг: 0 / 0
01.08.2017, 10:18
    #39498179
ferzmikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Empty и ноль
The_Prist,

Спасибо!
...
Рейтинг: 0 / 0
01.08.2017, 23:27
    #39498692
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Empty и ноль
Есть ещё варианты, когда "пустое значение" ячейки формируется формулой или форматом (например, "пустая строка"). Тогда лучше проверять "отображаемую пустоту" с помощью примерно такой конструкции:
Код: vbnet
1.
If Len(Ячейка.Text) = 0 Then 


И Len() можно применять не только к ячейкам, содержащим текст - функция все равно сначала неявно преобразует тип данных параметра в строковый.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Empty и ноль / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]