Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2012, 22:42   #1
fanatptz
 
Регистрация: 10.06.2012
Сообщений: 4
По умолчанию Активация в определёное время

Как сделать что определенный столбец был не активен в заданный промежуток времени?

Ну или макрос был не активен в данный промежуток времени.

Или лист был не активен в данный промежуток времени.

1 файл будут открывать не сколько людей у каждого свой лист.
Чтоб не было косяков при сохранении хочу чтоб они могли что-то менять только в заданные промежутки времени.
fanatptz вне форума Ответить с цитированием
Старый 10.06.2012, 22:59   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Посмотрите, недавно была тема.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 10.06.2012, 23:04   #3
fanatptz
 
Регистрация: 10.06.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
Посмотрите, недавно была тема.
Я там не нашел.

Есть возможность вставить в макрос что-то типа того чтоб он сравнивал время на компе и в макросе и если и если не совпало то он не работал?
fanatptz вне форума Ответить с цитированием
Старый 10.06.2012, 23:08   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
Sub MyMacros()
If BetweenTime("12:00", "14:00") Then Exit Sub'D 'В это время не работает
'Код макроса

End Sub
Function BetweenTime(ByVal StartDate As Date, ByVal EndDate As Date) As Boolean
DateTobeChecked = TimeSerial(Hour(Now), Minute(Now), Second(Now))
        If DateDiff("s", StartDate, DateTobeChecked) > -1 And DateDiff("s", EndDate, DateTobeChecked) < 1 Then
                BetweenTime = True
        Else
                BetweenTime = False
        End If
End Function
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 10.06.2012, 23:17   #5
fanatptz
 
Регистрация: 10.06.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
Код:
Sub MyMacros()
If BetweenTime("12:00", "14:00") Then Exit Sub'D 'В это время не работает
'Код макроса

End Sub
Function BetweenTime(ByVal StartDate As Date, ByVal EndDate As Date) As Boolean
DateTobeChecked = TimeSerial(Hour(Now), Minute(Now), Second(Now))
        If DateDiff("s", StartDate, DateTobeChecked) > -1 And DateDiff("s", EndDate, DateTobeChecked) < 1 Then
                BetweenTime = True
        Else
                BetweenTime = False
        End If
End Function
Отлично! Благодарю за быстрый ответ! )
fanatptz вне форума Ответить с цитированием
Старый 10.06.2012, 23:36   #6
fanatptz
 
Регистрация: 10.06.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
Код:
Sub MyMacros()
If BetweenTime("12:00", "14:00") Then Exit Sub'D 'В это время не работает
'Код макроса

End Sub
Function BetweenTime(ByVal StartDate As Date, ByVal EndDate As Date) As Boolean
DateTobeChecked = TimeSerial(Hour(Now), Minute(Now), Second(Now))
        If DateDiff("s", StartDate, DateTobeChecked) > -1 And DateDiff("s", EndDate, DateTobeChecked) < 1 Then
                BetweenTime = True
        Else
                BetweenTime = False
        End If
End Function
А еще вопрос а как сделать чтоб в это время наоборот работал? )
fanatptz вне форума Ответить с цитированием
Старый 11.06.2012, 00:09   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Чтоб не было косяков при сохранении
это решение само по себе - сплошной косяк.
Код:
If not BetweenTime(...
фамилию еще не забудьте проверить, кто это работает сейчас BetweenTime("12:00", "14:00")...

подозреваю, это не вытерпит тестовой эксплуатации.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Активация kasya Софт 2 10.01.2011 07:58
Активация листа в опр. время i777 Microsoft Office Excel 2 23.10.2010 20:11
активация Pavel1992 Операционные системы общие вопросы 2 13.10.2010 09:25
Лицензионное ПО. Активация программ. Переустановка и снова активация. Casper-SC Свободное общение 3 22.05.2010 11:41
Сохранения файлов в определёное место -=Virus=- Помощь студентам 5 20.07.2009 13:53