|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.10.2014, 14:06 | #1 |
Форумчанин
Регистрация: 01.03.2009
Сообщений: 230
|
оптимальное(?) динамическое обновление excel
добрый день!
хочется рефрешишь некоторые переменные в файле, думаю как это сделать лучше.. оптимальный критерий - чтобы в файле человек как работал так и работал, но какой-то скрипт выполнился, некоторые цифры поменялись. думал, сделать что-то подобное, Do Wscript.Sleep 30000 CreateObject("WScript.Shell").SendK eys "{F15}" Loop но как сделать так, чтобы Excel определил событие? (предполагается, что он активен) или можно поступить как-то проще? |
06.10.2014, 16:27 | #2 |
Регистрация: 05.10.2014
Сообщений: 7
|
после какого сбытия должен сработать скрипт?
|
06.10.2014, 17:31 | #3 |
Форумчанин
Регистрация: 01.03.2009
Сообщений: 230
|
там скорее привязка нужна к временному интервалу, который может меняться.
подумал, поискал.. в принципе меня устраивает такой вот вариант >>Application.OnTime Now + TimeSerial(0, 0, 5) хотя привязка к vbs мне тоже нравится.. но недопонимаю как наладить, чтобы работало все быстро и не косячило при работе в других книгах, в vb, в других приложениях. |
06.10.2014, 17:35 | #4 | |
Регистрация: 05.10.2014
Сообщений: 7
|
Цитата:
на ontime влияет только excel,а другие программы не влияют ,поэтому вам нужно позаобоиться только об ontime в excel. vba тоже не мешает ontime Последний раз редактировалось Ves67; 06.10.2014 в 17:40. |
|
07.10.2014, 06:02 | #5 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Application.OnTime обратите внимание на Application - в данном случае, это Excel В VBS нет Excel - потому такой метод не сработает В других приложениях может не быть метода OnTime так что этот метод применим прежде всего к Excel Цитата:
Если он быстрый - то никаких проблем Сам метод OnTime срабатывает моментально (собственно, это всего лишь одна команда - запуска макроса) |
||
07.10.2014, 19:48 | #6 | |||
Форумчанин
Регистрация: 01.03.2009
Сообщений: 230
|
Цитата:
Цитата:
в чем-то допилить, а в чем-то соизмеримом испортить - плохо! Цитата:
но интересно, а можно ли каким-нибудь обработчиком в excel {F15}, кинутую "в пространство" со стороны vbs отследить и куда-нибудь в себя записать навроде Лист1!A1="20:25:25 - Hello, F15!" но при этом, чтобы у пользователя была максимальная свобода в действиях. Последний раз редактировалось peq; 07.10.2014 в 20:25. |
|||
08.10.2014, 00:01 | #7 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
По теме: VBS может запустить макрос в открытом Excel для этого: 1) получаете ссылку на приложение Excel set XL = GetObject(,"Excel.application") сработает, если Excel уже запущен 2) запускаете макрос с именем test (неважно, в какой из открытых книг этот макрос, - лишь бы он был как Public в стандартном модуле) res = XL.run("test") макросу можно передать параметры, и считать результат в переменную res: res = XL.run("test", "Параметр1", txt) |
|
08.10.2014, 12:11 | #8 | |
Форумчанин
Регистрация: 01.03.2009
Сообщений: 230
|
Цитата:
по теме - спасибо. когда-нибудь куда-нибудь обязательно ее "впилю" удобная очень штука. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Найти оптимальное решение по планированию прозиводства (Мебельная фабрика для сборки столов и стульев) на Excel или MathCad | AL_BoomHaueR | Помощь студентам | 1 | 15.04.2013 12:54 |
Excel Задача на оптимальное использование(распределение) ресурсов 100р на тел | AmIsARES | Фриланс | 1 | 27.12.2011 19:18 |
~excel~исследованию операций!~оптимальное планирование финансов~ | ChekaGo | Microsoft Office Excel | 2 | 16.01.2011 15:57 |
qt динамическое обновление окна | jodam | Qt и кроссплатформенное программирование С/С++ | 2 | 18.05.2010 15:45 |
Динамическое обновление таблицы | Veiron | БД в Delphi | 4 | 01.07.2009 18:08 |