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

Вход

Регистрация

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

 

= Мир MS Excel/Автоматическое получение данных из закрытой книги. - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автоматическое получение данных из закрытой книги. (Формулы/Formulas)
Автоматическое получение данных из закрытой книги.
awaddwaawddw Дата: Вторник, 26.12.2017, 17:00 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 23
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте, помогите доработать код пожалуйста:

Нужно чтобы макрос включался, каждые 30 секунд самостоятельно.

[vba]
Код
Sub Get_Value_From_Close_Book()
    Dim sShName As String, sAddress As String, vData
    'Отключаем обновление экрана
    Application.ScreenUpdating = False
    Workbooks.Open "C:\Users\1ukom.xlsm" '"
    sAddress = "A1:O2000" 'или одна ячейка - "A1"
    'получаем значение
    vData = Sheets("Лист1").Range(sAddress).Value
    ActiveWorkbook.Close False
    'Записываем данные на активный лист книги,
    'с которой запустили макрос
    If IsArray(vData) Then
        [A1].Resize(UBound(vData, 1), UBound(vData, 2)).Value = vData
    Else
        [A1] = vData
    End If
    'Включаем обновление экрана
    Application.ScreenUpdating = True
End Sub
[/vba]


Сообщение отредактировал awaddwaawddw - Вторник, 26.12.2017, 17:14
 
Ответить
СообщениеЗдравствуйте, помогите доработать код пожалуйста:

Нужно чтобы макрос включался, каждые 30 секунд самостоятельно.

[vba]
Код
Sub Get_Value_From_Close_Book()
    Dim sShName As String, sAddress As String, vData
    'Отключаем обновление экрана
    Application.ScreenUpdating = False
    Workbooks.Open "C:\Users\1ukom.xlsm" '"
    sAddress = "A1:O2000" 'или одна ячейка - "A1"
    'получаем значение
    vData = Sheets("Лист1").Range(sAddress).Value
    ActiveWorkbook.Close False
    'Записываем данные на активный лист книги,
    'с которой запустили макрос
    If IsArray(vData) Then
        [A1].Resize(UBound(vData, 1), UBound(vData, 2)).Value = vData
    Else
        [A1] = vData
    End If
    'Включаем обновление экрана
    Application.ScreenUpdating = True
End Sub
[/vba]

Автор - awaddwaawddw
Дата добавления - 26.12.2017 в 17:00
Nic70y Дата: Вторник, 26.12.2017, 17:25 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4328
Репутация: 940 ±
Замечаний: 0% ±

Excel 2013
Вам таймер нужен?
[vba]
Код
Application.Wait Now + TimeSerial(0, 0, 30)
[/vba]


ЯД(poison) 41001841029809
+7 978 049 98 74 (мтс)
 
Ответить
СообщениеВам таймер нужен?
[vba]
Код
Application.Wait Now + TimeSerial(0, 0, 30)
[/vba]

Автор - Nic70y
Дата добавления - 26.12.2017 в 17:25
bmv98rus Дата: Вторник, 26.12.2017, 17:35 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 933
Репутация: 160 ±
Замечаний: 0% ±

Excel 2013/2016
скорее
Application.OnTime Now + TimeSerial(0, 0, 30), "Get_Value_From_Close_Book"
 
Ответить
Сообщениескорее
Application.OnTime Now + TimeSerial(0, 0, 30), "Get_Value_From_Close_Book"

Автор - bmv98rus
Дата добавления - 26.12.2017 в 17:35
awaddwaawddw Дата: Вторник, 26.12.2017, 17:37 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 23
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Именно этот код
Код
Application.OnTime Now + TimeSerial(0, 0, 30), "Get_Value_From_Close_Book"

Заработал. Спасибо!
 
Ответить
СообщениеИменно этот код
Код
Application.OnTime Now + TimeSerial(0, 0, 30), "Get_Value_From_Close_Book"

Заработал. Спасибо!

Автор - awaddwaawddw
Дата добавления - 26.12.2017 в 17:37
Hugo Дата: Вторник, 26.12.2017, 18:44 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2737
Репутация: 609 ±
Замечаний: 0% ±

На всякий случай гляньте в хелпе пример кода как этот Application.OnTime сбросить - когда-нибудь пригодится.
Для этого задавайте время через публичную переменную.


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069
 
Ответить
СообщениеНа всякий случай гляньте в хелпе пример кода как этот Application.OnTime сбросить - когда-нибудь пригодится.
Для этого задавайте время через публичную переменную.

Автор - Hugo
Дата добавления - 26.12.2017 в 18:44
bmv98rus Дата: Вторник, 26.12.2017, 20:47 | Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 933
Репутация: 160 ±
Замечаний: 0% ±

Excel 2013/2016
да, и для вашего случая :-) Workbooks.Open FileName:="C:\Users\1ukom.xlsm" '" , ReadOnly:=True
 
Ответить
Сообщениеда, и для вашего случая :-) Workbooks.Open FileName:="C:\Users\1ukom.xlsm" '" , ReadOnly:=True

Автор - bmv98rus
Дата добавления - 26.12.2017 в 20:47
krosav4ig Дата: Среда, 27.12.2017, 13:48 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1504
Репутация: 624 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а обновление каждую минуту не подойдет?
К сообщению приложен файл: 4092068.xlsx(16Kb)


(_)Õvõ(_)

Сообщение отредактировал krosav4ig - Среда, 27.12.2017, 13:48
 
Ответить
Сообщениеа обновление каждую минуту не подойдет?

Автор - krosav4ig
Дата добавления - 27.12.2017 в 13:48
bmv98rus Дата: Среда, 27.12.2017, 14:48 | Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 933
Репутация: 160 ±
Замечаний: 0% ±

Excel 2013/2016
krosav4ig, так как в теме(темах) от рождения их, то отвечу, не подходит не период, а MS Query
http://www.excelworld.ru/forum/6-36590-240513-16-1513574684 и http://www.excelworld.ru/forum/6-36590-241062-16-1514245447
 
Ответить
Сообщениеkrosav4ig, так как в теме(темах) от рождения их, то отвечу, не подходит не период, а MS Query
http://www.excelworld.ru/forum/6-36590-240513-16-1513574684 и http://www.excelworld.ru/forum/6-36590-241062-16-1514245447

Автор - bmv98rus
Дата добавления - 27.12.2017 в 14:48
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автоматическое получение данных из закрытой книги. (Формулы/Formulas)
Страница 1 из 11
Поиск:

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