Добрый день, уважаемые форумчане! В прикрепленном файле лист-шаблон, заполняемый пользователем системы. После заполнения созданное на основе шаблона ТЗ (техническое задание) пересылается другим пользователям. Для системы важно, что бы "шапка" ТЗ была заполнена полностью. А вот как программно проверить полноту заполнения немогу придумать. Подскажите пожалуйста. Может у кого есть идеи. Заранее спасибо.
Добрый день, уважаемые форумчане! В прикрепленном файле лист-шаблон, заполняемый пользователем системы. После заполнения созданное на основе шаблона ТЗ (техническое задание) пересылается другим пользователям. Для системы важно, что бы "шапка" ТЗ была заполнена полностью. А вот как программно проверить полноту заполнения немогу придумать. Подскажите пожалуйста. Может у кого есть идеи. Заранее спасибо.GWolf
_Boroda_, Добрый день! Спасибо за быстрый отзыв, я понял что недостаточно объяснил детали проблемы. Прошу прощения, и попытаюсь объяснить. "Шапка" формы - это набор блоков ячеек, я их покрасил в разные цвета, что бы лучше было на них ссылаться, хотя, адресацию А1:С2 никто не отменял. Каждый блок содержит после заполнения (точнее должен содержать) набор, как постоянных, так и переменных алфавитно-цифровых блоков текстовой строки. Например: Блок A1:C2 - название документа: "Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета.", где dd.mm.yyyy и nnnnnnnnnnnn величины переменные, все остальное - постоянные. Но "шаловливые ручки" пользователей иногда вносят коррективы как в постоянные так и в переменные составляющие. Вот я и хочу, средствами VBA проверять состояние тех и других перед отправкой. Можно конечно обойтись элементарным:
if range(.Cells(1,1),.Cells(2,3))<> "" then 'выполняем отправку else msgbox "Отправка невозможна" end if
но, может есть способ проверять более глубоко, типа "по маске", т.е. запись вида "Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета." является маской:
dim mska as string
mska="Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета."
f range(.Cells(1,1),.Cells(2,3))= mska then 'выполняем отправку else msgbox "Отправка невозможна" end if
Уф! Вроде объяснил.
_Boroda_, Добрый день! Спасибо за быстрый отзыв, я понял что недостаточно объяснил детали проблемы. Прошу прощения, и попытаюсь объяснить. "Шапка" формы - это набор блоков ячеек, я их покрасил в разные цвета, что бы лучше было на них ссылаться, хотя, адресацию А1:С2 никто не отменял. Каждый блок содержит после заполнения (точнее должен содержать) набор, как постоянных, так и переменных алфавитно-цифровых блоков текстовой строки. Например: Блок A1:C2 - название документа: "Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета.", где dd.mm.yyyy и nnnnnnnnnnnn величины переменные, все остальное - постоянные. Но "шаловливые ручки" пользователей иногда вносят коррективы как в постоянные так и в переменные составляющие. Вот я и хочу, средствами VBA проверять состояние тех и других перед отправкой. Можно конечно обойтись элементарным:
if range(.Cells(1,1),.Cells(2,3))<> "" then 'выполняем отправку else msgbox "Отправка невозможна" end if
но, может есть способ проверять более глубоко, типа "по маске", т.е. запись вида "Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета." является маской:
dim mska as string
mska="Техническое задание сформировано на дату: dd.mm.yyyy г., за № nnnnnnnnnnnn на производство сметного расчета."
f range(.Cells(1,1),.Cells(2,3))= mska then 'выполняем отправку else msgbox "Отправка невозможна" end if