Как обновить запрос в excel

Обновлено: 04.07.2024

​Смотрите также​Заранее спасибо.​ т.е. при любом​Application.Calculation = xlCalculationAutomatic​ “$”.​В настройках "формулы"​ Это нужно для​ диапазона.​содержится несколько сотен строк;​ Вручную, пользователь обновляет​На следующем рисунке показан​

Дополнительные сведения о внешних ссылках

​ наличие в книге​ обновлять связи автоматически​в группе​.​Существует несколько вариантов выбора​Чтобы обновить связи, нажмите​При создании внешних ссылок​_Boroda_​ телодвижении (кроме изменения​Makintosh​Если в ссылке​ - "параметры вычислений"​ того, чтобы активизировалась​Области позволяют сформировать структуру​пользователю нужно представлять одни​

​ данные, нажав кнопку​ основной процесс обновления​

​ самых последних данных.​ ​Буфер обмена​имя связи автоматически не​

​ в диалоговом окне​ кнопку​ (также называемых связями)​: а так?​

Управление связями с другими книгами

Ручное обновление всех (или никаких) связей в книге

​ то она называется​ если стоит другое​ таблицами».​Сначала заполним «Названия строк».​ данные в разных​

​ внешнему источнику.​ нельзя обновить без​​ все книги, которые​​Копировать​ может потребоваться удалить.​.​​в области сведений​​ них поддержку и​

Частичное обновление связей с другими книгами вручную

​ ваша функции медлительная,​

​ всё равно приходится​​ абсолютной, если символов​​ то ячейки пересчитываются​​На вкладке «Параметры» находим​​ Так как нужно​​ разрезах, выбирать информацию​​Обновление всех связей​

​1. когда пользователь инициирует​​ открытия книги-источника.​​ открываются на компьютере.​.​

​Удаление имени​На вкладке​ о документе, а​ расписание обновления. В​

​ параметрах галка "При​ то это будет​

​ обновлять вручную. И​​ $ в ссылке​​ по другим условиям.​

Управление выдачей запроса на обновление всех связей

​ группу «Сводная таблица».​ вывести список книг​ по заданному условию,​

Отключение выдачи запроса на обновление связей данной книги и обновление связей вручную

​ пересчете книги" "Обновлять​​ сказываться на быстроте​​ ещё заметил, если​​ нет – относительной.​​по 2003 (могу​​ Нажимаем – открывается​​ по годам, то​

​ группировать, а встроенный​​ подключения к данным​​ получить самые последние​

​ книгу на другом​​Вставить​Формулы​в группе​Включить это содержимое​ в ячейке приложение​ ссылки на другие​​ работы всего Excel​

Настройка обновления связей по запросу при открытии файла

​ формула написана встроенными​ Адреса таких ссылок​​ ошибиться, кажется так)​​ меню кнопки. Выбираем​

Если никакие связи не создавались

​ в этом разделе​​ фильтр и группировка​​ в книге при​​ данные.​​.​​ компьютере, не будут​​.​

​в группе​​Подключения​​.​

​ Microsoft Excel не​​ документы"?​Сергей​ функциями Excel то​​ называются абсолютными и​

​ : сервис-параметры-вкладка вычисления,​ пункт «Параметры».​ должен быть перечень​ справляются плохо.​ нажатии кнопки​2. обновление делает подключение​Закройте конечную книгу.​ затронуты.​Нажмите стрелку рядом с​Определенные имена​нажмите кнопку​

Разрыв связей с источником

​Закройте все книги.​​ выполняет поиск нового​И галка "Сохранять​: Здравствуйте.​ всё хорошо автоматом​ относительными, соответственно. "​ надо поставить галочку​В открывшемся меню «Параметры​ названий книг. В​Требования к исходной таблице:​Обновить все подключения​​ к источнику данных,​

​Откройте книгу-источник.​​На вкладке​​ кнопкой​​нажмите кнопку​​Изменить связи​​Откройте книгу, содержащую связи.​​ значения, если это​

​ значения внешних связей"?​​Вопрос такой -​​ обновляется, а если​Drshall​

​ около пункта автоматически​ сводной таблицы» нажать​ списке полей ставим​у каждого столбца есть​

​.​ часто сохранили файл​

​Откройте конечную книгу.​​Файл​​Параметры вставки​

​Диспетчер имен​.​На вкладке​

​ не задано пользователем.​

​Сергей​​ в папке имеется​​ с помощью написанной​​: а если адрес​​К предыдущему ответу:​​ кнопку «Разметка и​​ птичку напротив поля​

Замена одной формулы ее вычисляемым значением

​ знак $ фиксирует​ формат». Поставить галочки​ «Название». Данные столбца​ – неправильный; второй​Этот параметр автоматически обновляет​ все сведения, необходимые​Обновить​Параметры​​ выберите команду​ ​В столбце​

​Запрос на обновление связей​
​в группе​ книгой назначения, а​ формула вообще только​ эксель, таблицы с​
​ возникает эта проблема.​​ прописывать, а при​

​ значение при копировании​ напротив следующих пунктов:​

​ имеют текстовый формат​​ – правильный);​​ данные интервалом времени,​​ для доступа к​​.​​и выберите категорию​​Значения​​Имя​​.​

​Подключения​​ книга, с которой​​ нули выдаёт ))​​ одинаковой структурой, но​​New​

​ написании формулы щелкать​​ формул, но не​​Закрыть окно, нажав кнопку​​ – автоматически попадают​​значения в одном столбце​​ заданные автором книги.​ ​ и получить данные​

​Примечание:​​Дополнительно​ ​.​

​выберите имя, которое​Щелкните​​нажмите кнопку​ ​ установлена связь, называется​Придётся пока что​​ разным количеством строк​ ​: А у вас​

Если известно, что подключение к исходному файлу отсутствует

​ их​​ влияет на пересчет,​​ ОК.​ в область «Названия​ имеют одинаковый формат​Подробнее о том, как​ из внешнего источника​Мы стараемся как​.​

Если требуется работать с имеющимися данными, а не заменять их новыми

Если обновление в последний раз заняло слишком много времени

​Изменить связи​​ исходной книгой. Если​​ 30+ файлов открывать,​ + один файл​ в написанных функциях​Makintosh​ цитатка из хелпа​Еще один вариант:​ строк». К значениям​​ (число, дата, текст);​​ определить подключения к​​ данных.​​ можно оперативнее обеспечивать​​В Excel 2007 нажмите​​Не обновлять​ нажмите кнопку​ не обновлять автоматические​

Если эта книга создана другим пользователем и вы не знаете, почему появился этот запрос

Если вы каждый раз одинаково отвечаете на этот запрос и хотите, чтобы он больше не отображался

​ кнопку Microsoft Office​. Обновление из источника​Удалить​ связи​

​Из списка​ файл) содержит связи​​ нужном собрать =)​

​ определенные значения из​Application.Volatile​ столкнулся с такой​ возникает необходимость управлять​ отчетом. На вкладке​ по алфавиту.​ и столбцах заполнены​

​ в книге Excel​​ данных, которые вы​​ материалами на вашем​​, щелкните​​ при отсутствии подключения​​.​​.​

​Источник​ с другими книгами​​ Хорошо, что это​​ этих таблиц. В​​Makintosh​​ проблемой.​​ изменением адресов ячеек​

​ «Разработчик» нажать кнопку​​Теперь ставим птичку напротив​​ значениями;​​ читайте в статье​ можете получать доступ,​​ языке. Эта страница​Параметры Excel​ к нему невозможно.​Если используется диапазон внешних​

​Возможно, связь была создана​выберите связанный объект,​​ или файлами (которые​

​ нечасто требуется.​​ этом файле более​: Нет, такой строки​Значение ячейки А1​ или ссылок. Для​ «Запись макроса».​ поля «Год выпуска».​данные из одной ячейки​ подключение к внешним​

​ таких как OLAP,​​ переведена автоматически, поэтому​​и выберите категорию​​ Например, если книга-источник​​ данных, параметр запроса​​ случайно путем перемещения​​ который необходимо изменить.​

​ называются исходными файлами),​​Спасибо за внимание!​​ 5к строк. Для​

​ на Листе1 зависит​​ этого перед символами​Выполнить вручную обновление сводной​Сводная таблица сделана. С​

Если известно, что исходный файл доступен для подключения к нему

​ нельзя разнести в​​ данным (импорт) в​​ SQL Server, данных​ ее текст может​Дополнительно​

Если используется параметрический запрос

​ расположена в сети,​ может также использовать​ или копирования диапазона​

​Для выделения нескольких связей​​ а исходные файлы​​Serge_007​

​ вытягивания использую формулу:​

​ от значения ячейки​

​ адреса ячейки или​​ таблицы – остановить​​ помощью нескольких кликов.​

Обновление внешних данных в книге, открытой в браузере

​ разные столбцы (без​​ справочной системе Microsoft​ OLEDB и драйверы​ содержать неточности и​.​ а подключение к​ данные из другой​ ячеек, листа или​ щелкните каждый связанный​ изменятся, то связи​: Значит работает, иначе​Формула работает, всё,​: Нет, такой строки​ В2 на Листе2.​ ссылки устанавливаются символы​ запись. Нажать на​ Такой способ представления​ объединения ячеек).​ Excel.​ ODBC.​ грамматические ошибки. Для​В разделе​

В этой статье

​ могут указывать на​

​Function нннннн()​ значение В2 а​

Узнайте об обновлении данных

​ те атрибуты адреса​ из доступных макросов​ финансовых отчетов.​Нельзя будет вывести итоги,​

​ внешнего источника данных​ последних данных в​ эта статья была​снимите флажок​

​Не обновлять​ эти типы связей.​ Откройте книгу, а​Чтобы выделить все связи,​ устаревшие данные.​Сергей​ что при первом​Application.Volatile True​ потом перейти на​

​ ячейки, перед которыми​ записанный – «выполнить».​От сводной таблицы больше​ например, только по​ в книге, открытой​ книге.​ вам полезна. Просим​

​Запрашивать об обновлении автоматических​.​В Excel формула удаляется​

​ затем найдите ненужные​

Параметры для обновления данных Excel

​ не открыть также​ выдаётся​. ​ А1 не обновляется.​ “$”. Если перед​ открытии будет обновляться​

​ динамическая. То есть​

​Лучше значения ввести следующим​

​Не удается определить информации,​ секунд и сообщить,​. Если этот флажок​

​ И что бы​ всеми атрибутами адреса​ программно.​ при внесении новых​​ таким образом.​​Откройте книгу, содержащую данные,​

​ необходимой для подключения​

​ помогла ли она​ снят, связи будут​. Если не требуется​

Обновление данных из внешнего источника данных

​Есть например ячейка A1,​ данных в исходный​​ которые вы хотите​ к внешнему источнику​

​ вам, с помощью​ обновляться автоматически (без​ получение текущих данных,​

​ формулы ее значением,​​Важно:​​Можно настроить автоматическое обновление​

​ ссылку на диапазон​ нули. Проблема именно​

​ все книги, чтобы​​End Function​​ кликнуть 2 раза​ “$”, то при​ в которую берутся​

​ диапазон поля отчета​​Чтобы создать сводную таблицу​​ обновить.​ данных в книге​ кнопок внизу страницы.​

Обновление данных в сводных таблицах Excel

​ можно сэкономить время,​ немедленно после ввода​ При разрыве связей с​ связей при запуске​ ячеек в книге-источнике.​ в невозможности по​ собрать данные. В​New​ по ячейке А1​ копировании формулы ссылка​

О целесообразности и возможности сводных таблиц

​ данных из ячейки​ можно обновить. Как​ в качестве исходного​Щелкните значок​

  • ​ при работе в​
  • ​ Для удобства также​Одинаковый запрос для всех​ не обновляя все​ или вставки значения​ источником все формулы,​ или после запуска.​3. Книга-источник содержит ячейку,​ какой-то причине вытащить​

​ интернете встречал решения​

Заголовки.

  • ​: А вы попробуйте​ и нажать на​ не изменится.​ F1 по формуле​
  • ​ это сделать?​ диапазона возьмем каталог​данных​
  • ​ браузере. У вас​ приводим ссылку на​ пользователей этой книги​
  • ​ связи. После открытия​ нажмите кнопку​ использующие источник, заменяются​Предупреждение:​

​ значение из которой​

Информация.

​ данные из файлов,​ на ВБА, но​ добавьте её сразу​

Рационально.

​ Enter. Может можно​Например, если в​

Как сделать сводную таблицу в Excel

​Вручную:​ учебной литературы:​на панели инструментов.​ открыть книгу в​

Каталог.

​ оригинал (на английском​ ​ книги нажмите на​Отменить​ на их текущее​ Этот режим влияет на​ загружается и помещается​ которые ещё не​ я в нём​

  1. ​ первой строкой под​ написать код который​ записи формулы ссылку​ причинам иногда после​Когда данные внесены в​Подразумевается, что данная таблица​
  2. ​Выполните одно из указанных​ Microsoft Excel 2010​ языке) .​Предупреждение:​ вкладке​.​
  3. ​ значение. Например, связь​ всех пользователей книги.​ в конечную книгу.​ открывались в эту​ не разбираюсь и,​ названием функции, вот​ бы обновлял все​
  4. ​ на ячейку D7​ изменения данных в​
  5. ​ исходную таблицу, переходим​ состоит из сотен​ ниже действий.​ для определения сведений​При использовании книги в​ Этот режим влияет на​Данные​Выделите ячейку с формулой.​ =СУММ([Бюджет.xls]Годовой!C10:C25) будет заменена​ Если отключить обновление​Когда обе связанные книги​ сессию.​ так как решения​ так​ формулы на листе.​ записать в виде​
  6. ​ ячейке F1 данные​ на лист со​

​ строк. Создадим сводный​Установите флажок​ о подключении и​ браузере, средство просмотра​ всех пользователей книги.​

Как обновить сводную таблицу в Excel

​в группе​Если формула является​ на =45. Эту​ связей и выдачу​ открыты на одном​Nad_Serg​ для единичной книги​Function МояСуперФункция()​

​ Подскажите, как можно​

  1. ​ $D7, то при​ в ячейке A1​ сводным отчетом и​ отчет для выведения​Обновить все подключения​ другие параметры, например​ веб-отображает данные, либо​ Если отключить обновление​Подключения​
  2. ​ формула массива, выделите​ операцию нельзя отменить,​ запроса, пользователи этой​ компьютере, связи обновляются​: Сергей, я избавилась​ не могу сообразить,​Application.Volatile​
  3. ​ решить данную проблему.​ перемещении формулы будет​ не меняются автоматически,​ щелкаем в любом​

​ списка книг из​обновить все подключения​ способ отображения данных,​

Параметры1.

  1. ​ хранится непосредственно в​ связей и выдачу​кнопку​ диапазон ячеек, содержащих​ поэтому стоит сохранить​ книги не будут​ автоматически. Когда конечная​ от этой проблемы​
  2. ​ что мне нужно​'ля-ля-ля​Заранее огромное спасибо!​ изменяться только номер​ а изменяются только​
  3. ​ его месте правой​ конкретной категории или​ к данным в​ который требуется обновить.​ книге, или в​

​ запроса, пользователи этой​Изменить связи​

  1. ​ версию файла​ знать, что данные​ книга открыта, а​ убрав все флажки​
  2. ​ сделать, чтобы данные​'ля-ля-ля​New​ строки “7”. Запись​ после захода в​ кнопкой мыши. В​

​ определенного года. Задача​ книге​ Во время настройки​

Обновление данных в Excel

​ внешнему источнику данных,​ книги не будут​, а затем обновите​Выбор диапазона, содержащего массив​.​ устарели.​ книга-источник не открыта,​ (галочки) в на​ со всей кучи​End Function​: А версия Excel​ D$7 означает, что​ ячейку A1 вручную​ открывшемся меню выбираем​ сформулирована – перейдем​Выберите команду​ в Excel 2010,​ таких как базы​ знать, что данные​ связи только с​

​ ​​На вкладке​На вкладке​ в области сведений​ вкладке "защищенный просмотр"​

​ моих файлов подгружались​​вдруг поможет​ какая? Пересчёт какой​

​ книги. Вы также​​в группе​Изменить связи​Изменить связи​ этого запроса, а​ Вместо таблицы использовал​

Не обновляются автоматически данные

​ таблиц была проще​​ и всё хорошо​ Параметры - Вычисления​ то ссылка при​

​ автометичски обновить все​ Открываем вкладку «Параметры».​ - «Таблица». Нажимаем​Большой диапазон данных в​ краткое описание обновления​ из внешнего источника​нажмите кнопку​ можете выяснить, какие​Редактирование​.​.​ также режим обновления​ диапазон.​ и для вытягивания​ стало.​ - Автоматически​ перемещении формулы на​ данные?​ В группе «Данные»​ кнопку «Сводная таблица».​

​ таблице Excel рационально​

​ значений я использовал​​New​New​ этот адрес не​Ваш песец​ нажимаем кнопку «Обновить».​

​Автоматически выделяется весь диапазон.​​ представить в виде​ выбрать при настройке​

​ обновить данные. Эта​​.​ книге. На вкладке​

​Найти и выделить​

​Источник​​Запрос на обновление связей​ вывода запроса. Кроме​Новая​ формулу:​: Мы такие ))​: Если Excel 2010​ изменится, и в​: а если просто​Выделить сводную таблицу или​ Открывается диалоговое окно​ сводного отчета. Структура​ подключений к данным​

​выберите связь, которую​

​.​​ того, если книга​Quote​

​Quote​​ Только учтите, что​ - вкладка Формулы​

​ расчетах будут участвовать​
​ страницу обновить, сохранив​
​ отдельное поле, нажать​
​ инструмента. Необходимо проверить​
​ данного инструмента позволяет​
​ в Microsoft Excel.​
​ новая версия данных,​

​Запрос на обновление связей​​в группе​Выделить группу ячеек​ требуется разорвать.​Выберите нужный режим.​ содержит несколько связей,​

​ написав эту строку​
​ - (справа вверху)​

​ данные из ячейки​

​ сочетание клавиш Alt​​ правильность параметров для​ получить быстрый доступ​Параметр обновления​ который включает в​.​

​Подключения​​.​Для выделения нескольких связанных​Примечание:​ можно обновлять только​Получается, что эксель​Использование этой формулы​ в вашей функции,​ Параметры вычисления -​ D7. Если в​ помогает?​ + F5.​ отчета (диапазон, куда​ к итогам, информации​Описание​ себя все изменения,​Выберите нужный режим.​нажмите кнопку​В диалоговом окне​ объектов щелкните каждый​

Обновление данных при открытии книги (Как взять данные из соседних книг эксель, не открывая их?)

​ пересчитываться при любом​​ автоматическое вычисления?​
​ из четырех символов:​
​Алексей маслов​Открыть лист со сводным​ В правой нижней​Оптимально формировать сводный отчет​ открытии книги.​
​Параметры для обновления данных​ об этом.​

​ и запретить его​​.​ нажмите клавиши CTRL+A.​ о наличии разорванных​
​ закрыты, обновления не​ у меня.​ также буду благодарен.​ изменении на листе,​New​ “G”, “3”, “L”​
​: В следующий раз​

​ отчетом. Щелкнуть в​​ части страницы –​ на основе исходной​​Обновление вручную​

​ пишите из какого​​ любом месте таблицы​ области для размещения​ таблицы, если она​Этот параметр применяется только​Обновление данных из внешнего​Обновить​ книги в будущем.​

​Главная​​Разорвать​.​Откройте книгу, содержащую связи.​
​ откликнулся!​
​ могу сообразить чего-то.​
​ другой открытой книги,​​ макросом​
​ перед ними символ​ офиса ексель )))​ левой кнопкой мыши.​ данных из исходного​ отвечает следующим параметрам:​ к сводным таблицам.​
​ источника данных​. Это позволит гарантировать​

Это продолжение перевода книги Кен Пульс и Мигель Эскобар. Язык М для Power Query. Главы не являются независимыми, поэтому рекомендую читать последовательно.

По мере того, как вы создаете все больше и больше решений на основе Power Query, и начинаете понимать, сколько времени это экономит, вы захотите еще большей автоматизации. Да, вы можете просто щелкнуть правой кнопкой мыши таблицу, которая была импортирована с помощью Power Query, но даже это ощущается как… ручная операции. Нельзя ли запланировать обновление или, возможно, контролировать порядок обновления?

На самом деле вы можете использовать несколько различных методов автоматизации обновления решений Power Query:

  • Обновление при открытии книги
  • Обновление каждые Х минут
  • Обновить соединение по требованию с помощью VBA
  • Обновить все соединения по требованию с помощью VBA
  • Использовать расписание обновлений в сторонней надстройке

Ris. 16.1. Nastrojka parametrov podklyucheniya

Рис. 16.1. Настройка параметров подключения

Планирование обновлений без использования кода

Первые два метода работают через пользовательский интерфейс и не требуют кода VBA. Они могут быть настроены на основе подключения, и вы даже можете автоматизировать обновление вплоть до Power Pivot. Откройте файл Automating Refresh.xlsx. Перейдите на вкладку Данные –> Запросы и подключения. В правой части окна Excel откроется область Запросы и подключения. Кликните правой кнопкой мыши имя запроса –> Свойства. Откроется окно Свойства запроса (рис. 1).

Обратите внимание, что флажок Фоновое обновление установлен по умолчанию. Этот параметр позволяет указать, следует ли продолжать работать в Excel во время обновления данных. Если вы снимите этот флажок, вы можете потенциально уменьшить время, необходимое для обновления вашего решения, но вы также заблокируете пользовательский интерфейс, что означает, что вы не сможете делать другие вещи, пока обновление запроса не будет завершено. Желательно оставить этот параметр включенным.

Следующий параметр – Обновлять каждые ХХ минут. Этот параметр очень пригодится, если вы извлекаете данные из веб-источника, который постоянно меняется, или если вы ориентируетесь на базу данных, которая регулярно обновляется. Для того, чтобы это обновление произошло книга Excel должна быть открыта. Допустимые значения для этого параметра – от 1 до 32 767.

Обновлять при открытии книги. Второй параметр в этом разделе – Удалять данные из внешнего диапазона перед сохранением книги. Установите этот флажок, если вы хотите сохранить книгу с определением запроса, но без использования внешних данных. Снимите этот флажок, чтобы сохранить, и определение запроса, и данные. Этот флажок, будет доступен только после установления флажка Обновлять при открытии книги.

Автоматизация обновления запросов с помощью VBA

Приемы, описанные выше, и не использующие макросы, обходятся без каких-либо окон, предупреждающих о безопасности. Кроме того, такие книги легче переносить в Power BI, так как они не вызывают никаких проблем с блокировкой. Однако если вы работаете исключительно в настольном экземпляре Excel, иногда может потребоваться предоставить пользователю удобный и очевидный способ обновления решений Power Query. Это может быть сделано с помощью записи кода VBA.

Можно создать макрос для обновления одного подключения Power Query. В файле Automating Refresh.xlsx и перейдите на лист Transactions. На листе расположена Таблица Transactions, а также сводная таблица. Допустим, вы хотите создать макрос для обновления их обеих. Перейдите на вкладку Разработчик. Если вы не видите вкладку Разработчик, щелкните правой кнопкой мыши любую вкладку на ленте и выберите Настроить ленту. В правом окне установите флажок рядом с вкладкой Разработчик и нажмите Ok. На вкладке Разработчик нажмите кнопку Запись макроса. Также можно нажать иконку в левом нижнем углу окна Excel:

Ris. 16.2. Knopka Nachat zapis makrosa

Рис. 16.2. Кнопка Начать запись макроса

Как только вы нажмете эту кнопку, Excel начнет записывать каждый щелчок листа, каждое нажатие клавиши и… каждую ошибку, которую вы делаете. Выполните в точности следующие действия. Дайте макрос Refresh и сохраните его в текущей книге. Пройдите по меню Данные –> Запросы и подключения –> В правой части окна Excel в области Запросы и подключения кликните правой кнопкой мыши на запросе Transactions –> Обновить. Щелкните правой кнопкой мыши любую ячейку сводную таблицу –> Обновить. Повторно кликните кнопку, как на рис. 16.2. Запись макроса будет остановлена. Проверьте код. Пройдите по меню Вид –> Макросы:

Ris. 16.3. Makrosy

Рис. 16.3. Макросы

Нажмите Изменить. Откроется окно редактора VBA

Ris. 16.4. Kod VBA

Рис. 16.4. Код VBA; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

Добавьте кнопку для обновления макроса. Перейдите на вкладку Разработчик –> Вставить –> Кнопку:

Ris. 16.5. Vstavit element upravleniya Knopku

Рис. 16.5. Вставить элемент управления Кнопку

Выберите место на листе, и удерживая левую кнопку мыши, нарисуйте прямоугольник для Кнопки. Отпустите левую кнопку мыши. Появится окно с предложением поставить в соответствие Кнопке макрос. Выберите Refresh. Нажмите Ok. Щелкните правой кнопкой мыши по Кнопке –> Изменить текст. Введите Обновить. Щелкните любую ячейку на листе, чтобы выйти из режима редактирования названия кнопки.

Ris. 16.6. Knopka podklyuchennaya k makrosu

Рис. 16.6. Кнопка, подключенная к макросу

Обновление нескольких запросов

Теперь можно добавить иные запросы в макрос. Пройдите по меню Разработчик –> Макросы –> Refresh –> Изменить. На данный момент код имеет вид (см. также рис. 16.4):

%d1%80%d0%b8%d1%81-1-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%b4%d0%b8%d0%b0%d0%bb%d0%be%d0%b3%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d0%be%d0%ba%d0%bd%d0%b0-%d1%81

Рис. 1. Использование диалогового окна Создание веб-запроса для указания данных, которые следует импортировать; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

Термин «веб-запрос» немного неточен, так как с его помощью можно получать данные не только из Сети. Можно также выполнять веб-запрос к HTML-файлу, расположенному на локальном компьютере, или к файлу, хранящемуся на сетевом сервере либо на веб-сервере в Интернете. Чтобы получить информацию с веб-сервера, необходимо подключиться к Интернету. Когда данные получены, соединение с Интернетом для работы с ними больше не нужно (конечно, если вы не собираетесь обновлять эти данные).

Создать веб-запрос, обеспечивающий получение информации, которую позже можно будет обновить одним щелчком мыши, можно следующим образом.

Результат импорта (рис. 2) не совсем то, чего мы хотели. Нас интересовала только таблица валют, а веб-запрос вернул страницу целиком. По умолчанию импортированные данные являются веб-запросом. Чтобы обновить информацию, щелкните правой кнопкой мыши на любой ячейке в импортированном диапазоне и в контекстном меню выполните команду Обновить.

%d1%80%d0%b8%d1%81-2-%d0%b8%d0%bd%d1%84%d0%be%d1%80%d0%bc%d0%b0%d1%86%d0%b8%d1%8f-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b5%d0%bd%d0%bd%d0%b0%d1%8f-%d1%81-%d0%bf%d0%be%d0%bc%d0%be%d1%89%d1%8c%d1%8e

Рис. 2. Информация, полученная с помощью веб-запроса

Если вы не собираетесь создавать обновляемый запрос, укажите это в шаге 5 приведенного выше порядка действий. В диалоговом окне Импорт данных нажмите кнопку Свойства и снимите флажок Сохранить определение запроса.

Встроенная в Excel возможность работы с веб-запросами позволяет находить в HTML-документе таблицы (обозначаемые HTML-тегом <TABLE>). Однако веб-дизайнеры для отображения табличной информации все чаще пользуются каскадными таблицами стилей (CSS). Как понятно из данного примера, Excel не распознает такие таблицы и не показывает желтого квадрата со стрелкой, поэтому получить таблицу вы не сможете — вам может потребоваться получить целый документ, а потом удалить (или скрыть) все данные, кроме интересующей вас таблицы.

Еще один способ отобразить данные с веб-страницы на рабочем листе напрямую открыть URL в Excel, воспользовавшись командой Файл –> Открыть. Просто введите URL полностью в поле Имя файла и нажмите Открыть (рис. 2). Результаты могут различаться в зависимости от макета веб-страницы. Как правило, итог удовлетворительный. Иногда вы получаете немного лишней информации. Обратите внимание: такие данные не обновляются. Если информация на веб-странице изменится, нужно будет закрыть книгу и снова воспользоваться командой Файл –> Открыть. Мне не удалось этого сделать. Excel сначала писал, что открывает страницу в режиме защищенного просмотра, долго работал, а потом выдал, что книга повреждена, и открыть ее нельзя((

[1] По материалам книги Джон Уокенбах. Excel 2013. Трюки и советы. – СПб.: Питер, 2014. – С. 194–196.

У меня есть запрос ( Query1 ), загруженный в Excel с использованием соединения из Teradata . Обычно, когда я хочу обновить запрос, я должен щелкнуть его правой кнопкой мыши и выбрать «Изменить».

enter image description here

Оказавшись внутри Power Query Editor , я могу открыть Source и отредактировать SQL-скрипт внутри, чтобы обновить запрос.

enter image description here

Вопрос в том, как мне отредактировать этот сценарий SQL , используя VBA ?

При попытке использовать Macro Recorder , я могу только обновить запрос, используя

Попытка изменить CommandText также не удалась. Вот свойства запроса.

enter image description here

2 ответа

Сначала мы получаем формулу запроса, используя:

Причина, по которой мы должны это сделать, заключается в том, что строка формулы содержит некоторую дополнительную информацию о соединении с нашей базой данных, а не только сам SQL-запрос. Это может выглядеть примерно так:

Чтобы обновить запрос, мы устанавливаем ThisWorkbook.Queries.Item("Query1").Formula в новую строку формулы. Также будьте осторожны при обработке двойных кавычек внутри VBA. Вот скрипт, который я использовал:

Во-первых, замените ActiveWorkbook на ThisWorkbook , поскольку вы хотите работать с этой конкретной книгой (той, в которой хранится ваш код VBA), а не с какой-либо книгой, которая оказывается в настоящее время активен .

.Refresh - это метод соединения OLEDB, которое вы хотите изменить: у вас уже есть ссылка на соединение, для которого вы хотите изменить текст команды - все, что вам нужно, это вызвать метод, другой чем .Refresh против этого, то есть попробуй набрать эту точку и посмотреть, что этот объект может предложить.

Вы можете получить текст команды для этого OLEDBConnection объекта через его свойство CommandText - попробуйте ввести его в панель быстрого доступа (Ctrl + G) и посмотрим, если вы получите тот же результат:

Читайте также: