Как проверить наличие формулы в ячейке


показать предыдущий урок


Проверку на определение наличия в ячейке формулы можно осуществить следующим образом:

Sub проверка()
x = ActiveCell.Formula
___' Проверяем, равен ли первый левый знак, стоящий в выделенной (активной) ячейке, знаку равно
If Left(x, 1) = "=" Then
___' Если соответствует, то смещаемся вправо на одну соседнюю ячейку, ничего с ней не делая
ActiveCell.Cells(, 2).Activate
Else
___' Иначе очищаем данную ячейку
Selection.ClearContents
___' А если захотите ее обнулить,то вместо кода Selection.ClearContents вставьте ActiveCell.Value = 0
___' И снова смещаемся вправо, вдруг там есть еще ячейка, содержащая что-либо
ActiveCell.Cells(, 2).Activate
___' Заканчиваем проверку
End If
___'' Конец подпрограммы
End Sub


СТОП! Мы совсем не подумали о том, как долго будем двигаться вправо, ведь нам неизвестно, сколько колонок будет содержать наша таблица. Вот тут - то нам и понадобятся знания о том, что для Excel понятия пусто и ноль совсем неоднозначны. Если таблица закончилась, то последующие ячейки будут иметь значение ПУСТО, т.е они будут не инициализированы. (какое длинное и сложное слово, надо будет посмотреть по словарю, как оно пишется) Иными словами они имеют значение Empty. А нам предстоит организовать проверку на достижение таких ячеек, где соответственно и закончить движение вправо.

Что ж, давайте устроим еще одну проверку. На первый взгляд, это может показаться очень трудным, но на самом деле нам придется добавить только одну строку и поставить метку...

продолжение


СПРАВОЧНИК ДЛЯ ВАС

Как запустить редактор VBA...

Не знаете, как создать форму...

Не знаете, как подключить макросы ...

Вы не знаете как открыть окно свойств...

Инструментальную панель как открыть...

Автоматическая запись макроса...

Создание своей кнопки и ее подключение к макросу на выполнение...

Как провести проверку на работоспособность созданой кнопки...

Как найти макрос только что созданный вами в автоматическом режиме для последующего редактирования и изучения...

Рейтинг@Mail.ru
 главная с чего начать готовые программы задачи с решениями карта
Copyright © СОМИТ, А.Козлов, 2005 г