|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
12.05.2008, 14:53 | #1 |
Регистрация: 12.05.2008
Сообщений: 3
|
Не дать сохранит файл при условии
Здравствуйте. Имеется файл EXCEL. Как можно сделать его же средствами так, чтобы если заполнил столбец НАИМЕНОВАНИЕ, но забыл вбить ЦЕНУ, пользователь не смог сохранить этот файл???
|
12.05.2008, 14:58 | #2 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Событие
Workbook_BeforeSave , проверка всего, что надо проверить, и если что-то не так - Cancel = True |
12.05.2008, 15:25 | #3 |
Регистрация: 12.05.2008
Сообщений: 3
|
Это я так понял если я работаю с файлом через скажем Дельфи. А мне надо средствами самого же Excel'a. Или тут тоже есть события?
|
12.05.2008, 15:32 | #4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
События те же - средства обработки другие.
"Тут Вам не Англия, тут надо глубже копать..."
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
12.05.2008, 16:06 | #5 | |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Или тут их - таки да! - есть
Цитата:
Это - если Вы хотите использовать именно средства самого Excel'я. Входите (в VBE) в модуль "Эта книга", из комбобокса вверху слева выбираете объект Workbook, из комбобокса вверху справа - событие BeforeSave, и - вперёд, за орденами! Как запретить сохранение, я Вам уже написал. |
|
12.05.2008, 16:19 | #6 |
Регистрация: 12.05.2008
Сообщений: 3
|
Большое спасибо!!! Получилось что-то вроде этого:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim i As Integer For i = 1 To Лист1.UsedRange.Rows.Count If Лист1.Range("A" & i).Value = "123" And Лист1.Range("B" & i).Value = "123" Then Cancel = True Next i If Cancel Then MsgBox ("safsdf") End Sub Вдруг кому пригодится ) |
12.05.2008, 18:59 | #7 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Да-да, что-то вроде
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как не дать разъединиться с Инетом | Crazyman | Работа с сетью в Delphi | 2 | 04.03.2008 00:12 |
DBGridEh+EditMask при условии. | Jenya | БД в Delphi | 1 | 03.03.2008 13:58 |
Проблема в условии.. | POPOV | Общие вопросы C/C++ | 6 | 25.12.2007 13:39 |
Ошибка в условии запроса | boks | SQL, базы данных | 4 | 25.10.2007 10:43 |
TWebBrowser-как перехватить команду скрипта для закрытия окна и не дать ему закрыться | Вовик | Компоненты Delphi | 5 | 03.10.2007 12:17 |