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

Вход

Регистрация

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

 

= Мир MS Excel/VBA и VB.NET - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
VBA и VB.NET
Stacey Дата: Среда, 26.11.2014, 17:42 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день, поделитесь пожалуй своими знаниями в такой задаче:

Нужно написать макрос на VBA в Excel, который бы запускал таймер и по таймеру что то выполнял. Таймер нужно взять из библиотек классов VB.NET.
Читала что Excel 2010 должен поддерживать технологию VB.NET. Не знаю как подключить библиотеки VB.NET в макросе VBA, как обращаться к объектам классов VB.NET.
Не могу найти в интернете никаких примеров как такое делать или это невозможно???
 
Ответить
СообщениеДобрый день, поделитесь пожалуй своими знаниями в такой задаче:

Нужно написать макрос на VBA в Excel, который бы запускал таймер и по таймеру что то выполнял. Таймер нужно взять из библиотек классов VB.NET.
Читала что Excel 2010 должен поддерживать технологию VB.NET. Не знаю как подключить библиотеки VB.NET в макросе VBA, как обращаться к объектам классов VB.NET.
Не могу найти в интернете никаких примеров как такое делать или это невозможно???

Автор - Stacey
Дата добавления - 26.11.2014 в 17:42
doober Дата: Среда, 26.11.2014, 18:20 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 982
Репутация: 338 ±
Замечаний: 0% ±

Excel 2010
Цитата
Таймер нужно взять из библиотек классов VB.NET.

Зачем оно вам надо.
Что вы этим хотите добиться?
Многопоточности вы не получите,если использовать таймер в VBA.
Создавайте надстройку в VS,в ней весь код обработки.
Запустить процедуру можно и с Excel макросом, но лучше кнопкой с ленты.
В той же надстройке создаете CustomTaskPane и кидаете на нее все ,что пожелаете


 
Ответить
Сообщение
Цитата
Таймер нужно взять из библиотек классов VB.NET.

Зачем оно вам надо.
Что вы этим хотите добиться?
Многопоточности вы не получите,если использовать таймер в VBA.
Создавайте надстройку в VS,в ней весь код обработки.
Запустить процедуру можно и с Excel макросом, но лучше кнопкой с ленты.
В той же надстройке создаете CustomTaskPane и кидаете на нее все ,что пожелаете

Автор - doober
Дата добавления - 26.11.2014 в 18:20
Stacey Дата: Среда, 26.11.2014, 18:58 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Дело не только в таймере. Достаточно огромная программа уже давно написана на VBA в экселе, она сейчас использует компоненты из VB6.0 (timer, datagrid, winsock, adodc, chart). Программа по независимым таймерам проверяет состояния флагов, которые могут меняться внешними устройствами и записывает сообщения в БД, а также отображает изменения на разных формах. Проблема возникла на Windows 8, там компоненты VB6.0 либо не поддерживаются, либо работают некорректно. Было принято решение использовать такие же компоненты из VB.NET. Конечно можно создать пользовательскую библиотеку и подключить ее в VBA, но в эту библиотеку нужно передавать слишком много параметров и получать много результатов, проще использовать объекты классов напрямую в экселе, подключив как то классы из VB.NET. Но возможно ли такое сделать, вопрос
 
Ответить
СообщениеДело не только в таймере. Достаточно огромная программа уже давно написана на VBA в экселе, она сейчас использует компоненты из VB6.0 (timer, datagrid, winsock, adodc, chart). Программа по независимым таймерам проверяет состояния флагов, которые могут меняться внешними устройствами и записывает сообщения в БД, а также отображает изменения на разных формах. Проблема возникла на Windows 8, там компоненты VB6.0 либо не поддерживаются, либо работают некорректно. Было принято решение использовать такие же компоненты из VB.NET. Конечно можно создать пользовательскую библиотеку и подключить ее в VBA, но в эту библиотеку нужно передавать слишком много параметров и получать много результатов, проще использовать объекты классов напрямую в экселе, подключив как то классы из VB.NET. Но возможно ли такое сделать, вопрос

Автор - Stacey
Дата добавления - 26.11.2014 в 18:58
  • Страница 1 из 1
  • 1
Поиск:

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