Друзья, прошу помощи.
Есть таблица эксель в которой из программы каждую секунду обновляются данные.
Мне требуется каждые 10 минут сохранить текущие данные на новом листе, в другой книге, в конкретное время, например ровно в 10:00:00 записать данные (зафиксировать их) - как можно реализовать?
Искал с функцией "ВРЕМЯ"/"ВРЕМЯЗНАЧ" но там только возвращение времени.
Здравствуйте
Цитата: Kirill G. от 21.02.2016, 14:09...каждые 10 минут сохранить текущие данные на новом листе, в другой книге, в конкретное время, например ровно в 10:00:00 записать данные (зафиксировать их) - как можно реализовать?
Искал с функцией "ВРЕМЯ"/"ВРЕМЯЗНАЧ" но там только возвращение времени...
Реализовать можно исключительно на VBA, средствами Excel это невозможно
Почему нет? В одной ячейки задайте необходимое время, в другой функцию Дата-это условие функции Если, для выполнения Вам необходимых действий в определенное время
zs, благодарю, я понял.
Но не работает, посмотрите вложенный файл
----------
Ячейка: А2 - является динамически изменяемым параметром (меняется постоянно)
Ячейка: D4 - необходимое время фиксации
Ячейка: Е4 - формула где должно появиться значение
Ячейка: F2 - текущее время
----------------------
Скорее всего макрос может заставить фиксировать значение или Выделяете ячейку/несколько ячеек с формулами - Копируете - Правая кнопка мыши - Специальная вставка - Значения
Цитата: zs от 21.02.2016, 18:20...Почему нет?..
Потому что
Цитата: Kirill G. от 21.02.2016, 14:09...каждые 10 минут сохранить текущие данные на новом листе, в другой книге, в конкретное время, например ровно в 10:00:00...
Excel не умеет. Нет у него таких функций и быть не может
Цитата: zs от 21.02.2016, 21:32
Скорее всего макрос может заставить фиксировать значение или Выделяете ячейку/несколько ячеек с формулами - Копируете - Правая кнопка мыши - Специальная вставка - Значения
Зачем удалили вчерашнее сообщение вечером ???
Я реализовал через технологию которую Вы вчера написали (примерно), по следующему алгоритму: формула "ТДАТА", выделил отдельно "часы" "минуты" "секунды" затем объединил в одно поле "СЦЕПИТЬ" (обязательно текстовый формат), затем в функции "ЕСЛИ" указал необходимое мне время (ячейка также должна иметь только текстовый формат) и соот. при совпадении времени в ячейке формулы появляется результат который мне нужен, НО только на одну секунду, т.к. формула "ЕСЛИ" продолжает сравнивать время и текстовую ячейку.
Теперь осталось придумать как зафиксировать результат.
ЦитироватьExcel не умеет. Нет у него таких функций и быть не может
Эксель умеет, алгоритм выше, только пока не получается зафиксировать полученный результат
(данные выводятся через ДДЕ сервер)
Как раз б этом Вам и пишут - нет таких инструментов, только с помощью VBA (макросы)
Вернее, один есть - итеративные вычисления. Но применять не светую, есть определенные неудобства и ограничения.
Цитироватьформула "ТДАТА", выделил отдельно "часы" "минуты" "секунды" затем объединил в одно поле "СЦЕПИТЬ" (обязательно текстовый формат)
И это не совсем правильно. Преобразовывать в текст для сравнения времени?
кнопка цитирования не для ответа [МОДЕРАТОР]
Понятно.
Да, формат поля должен быть текстовым, иначе результат не показывается.
Цитировать"ТДАТА", выделил отдельно "часы" "минуты" "секунды"
=F2-ЦЕЛОЕ(F2)
Если данные обновляются из программы, в которой они сохранены и представлены и за прошлое время, то составьте реестр в виде столба необходимых этапов времени (например, 10,20, 30 минут и т.д.) и тогда вам не надо будет фиксировать полученный результат, а просто ячейки будут заполняться по мере того, как в программе будет появляться значение по ходу времени, а поскольку прошлые значения также есть в программе они также будут присутствовать в вашем столбце.
к сожалению не сохраняются, постоянно обновляются
http://www.excel-vba.ru/chto-umeet-excel/kak-udalit-v-yachejke-formulu-ostaviv-znacheniya/
да, для фиксирования результатов, скорее всего VBA, благодарю
Вот так люди тратят свое время:
Цитата: Kirill G. от 23.02.2016, 12:18да, для фиксирования результатов, скорее всего VBA
Цитата: Serge 007 от 21.02.2016, 17:58Реализовать можно исключительно на VBA, средствами Excel это невозможно
Цитата: Kirill G. от 22.02.2016, 13:24
ЦитироватьExcel не умеет. Нет у него таких функций и быть не может
Эксель умеет, алгоритм выше, только пока не получается зафиксировать полученный результат
Цитата: vikttur от 22.02.2016, 14:35
Как раз б этом Вам и пишут - нет таких инструментов, только с помощью VBA (макросы)
:)