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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2014, 10:22   #1
MaxxVer
Форумчанин
 
Регистрация: 17.03.2009
Сообщений: 226
По умолчанию Переход в открытые книги (команда из надстройки xla)

Добрый день, уважаемые эксперты!
Впервые пишу код для надстройки (xla) и столкнулся с такой проблемой - мой код начинает выполняется в Книге 1, потом открывает Книгу 2 и создает Книгу 3. Названия Книг всегда разные, поэтому обратиться к книге по названию не могу. Необходимо перейти (обратиться) к Книге 1 (для копирования из неё), потом вернуться в Книгу 3. На подобие команды Alt-Tab в винде. Не понимаю как это написать.., подскажите пожалуйста. Можно это сделать без присвоения каждой книге имен и путей сохранения..?
MaxxVer вне форума Ответить с цитированием
Старый 29.05.2014, 11:14   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Можно.
Ориентируйте код на активную в начале работы книгу. Присваиваете ей объектную переменную.
Далее открываете книгу2 (вероятно или уже прописан путь, или выбор в диалоге) - ей тоже переменную.
Ну и созданной книге тоже.
Далее используете эти переменные.
Названия книг нигде не нужны. И не важны.

Схематично:
Код:
Sub tt()
    Dim wb1 As Workbook, wb2 As Workbook, wb3 As Workbook

    Set wb1 = ActiveWorkbook
    Set wb2 = Workbooks.Open("C:\Downloads\5051245.xls")
    Set wb3 = Workbooks.Add


    MsgBox wb1.Sheets(1).Range("A1").Value
    MsgBox wb2.Sheets(1).Range("A1").Value
    MsgBox wb3.Sheets(1).Range("A1").Value

End Sub
И зачем вообще в них "переходить"?
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 29.05.2014 в 11:37.
Hugo121 вне форума Ответить с цитированием
Старый 29.05.2014, 13:04   #3
MaxxVer
Форумчанин
 
Регистрация: 17.03.2009
Сообщений: 226
По умолчанию

Спасибо большое! Принцип понял. Имел в виду не переходить, а обращаться из кода...
MaxxVer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование Имен текущей книги из xla tae1980 Microsoft Office Excel 1 06.01.2012 20:39
Команда System: запуск программы в свёрнутом режиме, Не работает команда /min Me777 Общие вопросы C/C++ 0 12.07.2011 11:49
Не заходит на открытые доступы :( bookkc Помощь студентам 4 24.10.2010 08:45
Переход на другой лист книги svetly12 Microsoft Office Excel 1 13.06.2010 14:54
Переход на новую главу книги. POGONEZ Помощь студентам 2 16.03.2010 20:08