Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Проверка на совпадения временных интервалов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Проверка на совпадения временных интервалов (Макросы/Sub)
Проверка на совпадения временных интервалов
ASWP Дата: Четверг, 14.02.2019, 19:36 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 24 ±
Замечаний: 0% ±

Excel 2007
Добрый день. Как сделать, чтобы перед сохранением в другую книгу, проверить пересекается ли указанное время, с тем что уже имеется в таблице, с учетом даты. Я попробовал это с помощью формулы вначале реализовать, но не получилось.
К сообщению приложен файл: control.xlsb (25.4 Kb) · table.xls (23.0 Kb)


я знаю что ничего не знаю, но другие не знают и этого

Сообщение отредактировал ASWP - Четверг, 14.02.2019, 19:37
 
Ответить
СообщениеДобрый день. Как сделать, чтобы перед сохранением в другую книгу, проверить пересекается ли указанное время, с тем что уже имеется в таблице, с учетом даты. Я попробовал это с помощью формулы вначале реализовать, но не получилось.

Автор - ASWP
Дата добавления - 14.02.2019 в 19:36
Nic70y Дата: Четверг, 14.02.2019, 20:22 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2272 ±
Замечаний: 0% ±

Excel 2010
как понял
Код
=ЕСЛИОШИБКА(И(ИНДЕКС(Таблица2[Время начала];ПОИСКПОЗ(ФВД!C13;Таблица2[Дата];))<=ФВД!G13;ИНДЕКС(Таблица2[Время конец];ПОИСКПОЗ(ФВД!C13;Таблица2[Дата];))>=ФВД!E13);)
К сообщению приложен файл: 0503472.xlsb (23.8 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениекак понял
Код
=ЕСЛИОШИБКА(И(ИНДЕКС(Таблица2[Время начала];ПОИСКПОЗ(ФВД!C13;Таблица2[Дата];))<=ФВД!G13;ИНДЕКС(Таблица2[Время конец];ПОИСКПОЗ(ФВД!C13;Таблица2[Дата];))>=ФВД!E13);)

Автор - Nic70y
Дата добавления - 14.02.2019 в 20:22
_Boroda_ Дата: Четверг, 14.02.2019, 21:12 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Я тоже не очень понял. Может, так?
Код
=СУММПРОИЗВ((C13=Таблица2[Дата])*(E13<Таблица2[Время конец])*(G13>Таблица2[Время начала]))

И формат
"Пересечение";;
И условное форматирование
К сообщению приложен файл: control_1.xlsb (23.4 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЯ тоже не очень понял. Может, так?
Код
=СУММПРОИЗВ((C13=Таблица2[Дата])*(E13<Таблица2[Время конец])*(G13>Таблица2[Время начала]))

И формат
"Пересечение";;
И условное форматирование

Автор - _Boroda_
Дата добавления - 14.02.2019 в 21:12
ASWP Дата: Четверг, 14.02.2019, 21:32 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 24 ±
Замечаний: 0% ±

Excel 2007
У меня данные сразу будут сохраниться в таблице, которая находиться в другой книге, но точно не знаю, как лучше сделать, и я хочу чтобы макрос не просто скопировал данные в книгу, а проверил занято, ли текущее время.
Nic70y, У вас в формуле две "истины", но это не совсем верно, потому что до 16-00 время свободно, моя формула верно показывает, "ложь и истина", т.е. до 16-00 можно записаться, но вот так ее приделать, не знаю.

В общем я хочу сделать проверку, либо во время ввода, чтобы нельзя было вводить уже занятое время, либо уже во время работы макроса.
К сообщению приложен файл: pimer.xlsx (8.8 Kb)


я знаю что ничего не знаю, но другие не знают и этого

Сообщение отредактировал ASWP - Четверг, 14.02.2019, 21:56
 
Ответить
СообщениеУ меня данные сразу будут сохраниться в таблице, которая находиться в другой книге, но точно не знаю, как лучше сделать, и я хочу чтобы макрос не просто скопировал данные в книгу, а проверил занято, ли текущее время.
Nic70y, У вас в формуле две "истины", но это не совсем верно, потому что до 16-00 время свободно, моя формула верно показывает, "ложь и истина", т.е. до 16-00 можно записаться, но вот так ее приделать, не знаю.

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

Автор - ASWP
Дата добавления - 14.02.2019 в 21:32
_Boroda_ Дата: Четверг, 14.02.2019, 23:41 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
А мою формулу не смотрели?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА мою формулу не смотрели?

Автор - _Boroda_
Дата добавления - 14.02.2019 в 23:41
ASWP Дата: Пятница, 15.02.2019, 08:16 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 24 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, Не досмотрел, а сегодня уже рассмотрел :D


я знаю что ничего не знаю, но другие не знают и этого
 
Ответить
Сообщение_Boroda_, Не досмотрел, а сегодня уже рассмотрел :D

Автор - ASWP
Дата добавления - 15.02.2019 в 08:16
ASWP Дата: Пятница, 15.02.2019, 17:16 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 24 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, Формула отлично работает, но только если таблица находиться в той же книги, в другой книги уже не работает.


я знаю что ничего не знаю, но другие не знают и этого
 
Ответить
Сообщение_Boroda_, Формула отлично работает, но только если таблица находиться в той же книги, в другой книги уже не работает.

Автор - ASWP
Дата добавления - 15.02.2019 в 17:16
_Boroda_ Дата: Пятница, 15.02.2019, 23:48 | Сообщение № 8
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Вместо "Таблица2[...]" напишите обычный диапазон типа А1:А999. Можно с запасом, только без фанатизма. Тогда будет работать с закрытой второй книгой
А если вторая книга открыта, то примерно вот так нужно
[vba]
Код
'Книга.xlsm'!Таблица2[Дата]
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВместо "Таблица2[...]" напишите обычный диапазон типа А1:А999. Можно с запасом, только без фанатизма. Тогда будет работать с закрытой второй книгой
А если вторая книга открыта, то примерно вот так нужно
[vba]
Код
'Книга.xlsm'!Таблица2[Дата]
[/vba]

Автор - _Boroda_
Дата добавления - 15.02.2019 в 23:48
ASWP Дата: Суббота, 16.02.2019, 17:30 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 24 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, Все гениальное просто) А еще вопрос, у меня есть макрос который копирует данные в другую книгу, какой код добавить в макросе, чтобы он перед копированием обновил (пересчитал) формулу?


я знаю что ничего не знаю, но другие не знают и этого

Сообщение отредактировал ASWP - Суббота, 16.02.2019, 17:31
 
Ответить
Сообщение_Boroda_, Все гениальное просто) А еще вопрос, у меня есть макрос который копирует данные в другую книгу, какой код добавить в макросе, чтобы он перед копированием обновил (пересчитал) формулу?

Автор - ASWP
Дата добавления - 16.02.2019 в 17:30
_Boroda_ Дата: Суббота, 16.02.2019, 17:55 | Сообщение № 10
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Не-не-не, это совсем другой вопрос = другая тема
Тем более, что нужно уточнение - пересчитать одну формулу, несколько, весь лист, все открытые файлы Excel?
И зачем перед копированием пересчитывать? У Вас в файле стоит ручной пересчет?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНе-не-не, это совсем другой вопрос = другая тема
Тем более, что нужно уточнение - пересчитать одну формулу, несколько, весь лист, все открытые файлы Excel?
И зачем перед копированием пересчитывать? У Вас в файле стоит ручной пересчет?

Автор - _Boroda_
Дата добавления - 16.02.2019 в 17:55
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Проверка на совпадения временных интервалов (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!