17 авг. 2022 г.
читать 1 мин
В следующем пошаговом примере показано, как автоматически заполнять значения с другого листа в Excel.
Шаг 1: введите данные на первом листе
Во-первых, давайте введем следующие данные в Sheet1 в Excel:
Шаг 2: Автозаполнение данных на втором листе
Теперь предположим, что у нас есть еще один лист под названием Sheet2 , который содержит следующие данные:
Предположим, мы хотим автоматически заполнить значения из столбца Points на Sheet1 в столбце Points на Sheet2 .
Для этого мы можем ввести следующую формулу в ячейку C2 Листа2 :
=Sheet1!B2
Это автоматически заполнит ячейку C2 в Sheet2 значением из ячейки B2 в Sheet1 :
Чтобы автоматически заполнить остальные значения в столбце C, наведите указатель мыши на правый нижний угол ячейки C2 , пока не появится крошечный крестик «+». Затем дважды щелкните.
Каждая из оставшихся ячеек в столбце C будет заполнена:
Обратите внимание, что все значения из столбца Points в Sheet1 были автоматически заполнены в Sheet2 .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:
Как автозаполнять даты в Excel
Как заменить пустые ячейки нулем в Excel
Как заменить значения #N/A в Excel
Написано
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.
Данная статья о том, как связать таблицы, чтобы данные из одной таблицы автоматически переносились во вторую.
Приведу три способа Автоматического переноса данных с одного листа программы «Эксель» в другой.
Первый, самый простой и примитивный способ связи двух таблиц на разных листах документа -вставка данных при помощи опции специальной вставки.
Рассмотрим, как соединить две таблицы по шагам.
Первый шаг.
Необходимо выделить ту таблицу, из которой будут транслироваться данные во вторую таблицу.
Второй шаг.
Копировать информацию сочетанием клавиш ctrl+C или вызвав контекстное меню правой кнопкой мыши и кликнув по пункту меню «Копировать»
Третий шаг.
Перейти на лист документа «Excel», в который Вы планируете транслировать информацию из первой таблицы.
Четвертый шаг.
Поставить курсор в первую (левую верхнюю) ячейку таблицы и выбрать в меню «Вставка» пункт «Вставить связь». В некоторых версиях программы «Excel» этот пункт находится в меню «Специальная вставка»
После вставки связи следует отформатировать вид ячеек – привести их к надлежащему виду.
Второй способ переноса данных из одной таблицы в другую — это использование сводных таблиц в программе «Excel».
При использовании данного метода роль второй таблицы («реципиента») играет сама сводная таблица.
При клике правой кнопкой мыши по сводной таблице и нажатии на пункт «Обновить» сводная таблица автоматически перенесет все данные из связанного массива информации («таблицы донора»).
О том, как в «Эксель» создавать сводные таблицы подробно написано в статье:
Как делать сводные таблицы в программе «Excel» и для чего они нужны.
Третий способ самый эффективный и наиболее автоматизированный — это использование меню надстройки «Power Query».
Правда нужно отметить, что этот способ подходит только пользователям Excel 2016 и пользователям Excel 2013и выше с установленной надстройкой «Power Query».
Смысл способа в следующем:
Необходимо открыть вкладку «Power Query». В разделе «Данные Excel» нажимаем кнопку (пиктограмму) «Из таблицы».
Далее нужно выбрать диапазон ячеек, из которых нужно «притянуть» информацию и нажимаем «Ок».
После выбора области данных появится окно настройки вида новой таблицы. В этом окне Вы можете настроить последовательность вывода столбцов и удалить ненужные столбцы.
После настройки вида таблицы нажмите кнопку «Закрыть и загрузить»
Обновление полученной таблицы происходит кликом правой кнопки мыши по названию нужного запроса в правой части листа (список «Запросы книги»). После клика правой кнопкой мыши в выпадающем контекстном меню следует нажать на пункт «Обновить»
Как мы все знаем, Microsoft Excel – очень полезная и популярная рабочая книга, которую пользователи могут хранить любые важные данные.
В Microsoft Excel пользователи могут выполнять несколько различных типов задач, таких как автоматически переносить данные с одного листа Excel на другой, обновлять один лист Excel с другого листа , копировать данные с одного листа на другой в Excel и т. д. для удобства.
Но сегодня в этом моем сообщении блога я расскажу о , как автоматически копировать данные из одной ячейки в другую в Excel ? Кроме того, узнайте , как автоматически обновлять один лист Excel с другого листа, автоматически переносить данные с одного листа Excel на другой, и многое другое подробно.
Итак, просто внимательно просмотрите этот блог.
Содержание
- Практический сценарий
- Методы передачи данных из одной книги Excel в другую
- Метод № 1: автоматически Обновление одного листа Excel с другого листа
- Метод № 2: обновить электронную таблицу Excel данными из другой электронной таблицы
- Метод № 3: Как автоматически скопировать данные из одной ячейки в другую в Excel
- Метод № 4: Как скопировать данные с одного листа на другой в Excel с помощью формулы
- Метод № 5: копирование данных с одного листа на другой в Excel с помощью макросов
- Рекомендуемое решение: средство восстановления и восстановления MS Excel
- Шаги по использованию средства восстановления и восстановления MS Excel:
- Заключение:
- Маргрет
- MicroKnowledge, Inc.
- Приведенные ниже шаги объясняют, как настроить это с помощью Excel 2007 или более поздней версии.
Практический сценарий
Хорошо, сначала я должен упомянуть, что я полный любитель когда дело доходит до превосходства. У меня нет опыта работы с VBA или макросами, поэтому, если вы не уверены, знаю ли я что-то еще, вероятно, не знаю.
У меня есть рабочая тетрадь с 6 листами внутри; один из листов – мастер; это просто остальные 6 листов, составленные в один большой. Мне нужно настроить его так, чтобы любые новые данные, введенные в новые отдельные листы, автоматически вводились в мастер-лист в первой пустой строке.
Столбцы не одинаковы на всех листах. . Надеюсь, здесь профи будет легче, чем мне, в этом я бился головой о стену. Я буду тщательно проверять эту ветку, поэтому, если вам понадобится дополнительная информация, просто дайте мне знать …
Заранее благодарим за любую помощь.
Источник: https://ccm.net/forum/affich-1019001-automatically-update-master-worksheet-from- другие рабочие листы
Методы передачи данных из одной книги Excel в другую
Существует множество различных способов переноса данных из одной книги Excel в другую , и они следующие:
Метод № 1: автоматически Обновление одного листа Excel с другого листа
В книге MS Excel мы можем легко обновить данные, связав один лист с другим. Эта ссылка известна как динамическая формула, которая автоматически передает данные из одной книги Excel в другую .
Одна книга Excel называется источником рабочий лист , где эта ссылка автоматически переносит данные рабочего листа, а другая книга называется целевым листом , в котором он автоматически обновляет данные рабочего листа и содержит формулу связи.
Ниже приведены две разные точки для связывания Excel. данные книги для автоматических обновлений.
1) С использованием функции копирования и вставки
- В исходный лист, выберите и скопируйте данные, которые вы хотите связать на другом листе.
- Теперь на целевом листе Вставьте данные, к которым вы связали исходный лист ячейки.
- После этого выберите меню Вставить ссылку из Другие параметры вставки в книге Excel
- Сохраните всю свою работу из исходного рабочего листа перед его закрытием.
2) Введите формулу вручную
- Откройте целевой рабочий лист, коснитесь ячейки, в которой есть формула связи, и поместите знак равенства (=) поперек нее.
- Теперь перейдите к источник ш eet и коснитесь ячейки, в которой есть данные. нажмите Enter на клавиатуре и сохраните свои задачи.
Примечание- Всегда помните одну вещь, что формат исходного рабочего листа и конечный рабочий лист одинаковы.
Метод № 2: обновить электронную таблицу Excel данными из другой электронной таблицы
Чтобы обновить электронные таблицы Excel данными из другой электронной таблицы, просто следуйте приведенным ниже пунктам, которые будут применимы к версии Excel 2019, 2016, 2013, 2010, 2007.
- Сначала перейдите в меню Данные .
- Выберите параметр Обновить все
- Здесь вы должны увидеть, когда и как обновляется соединение
- Теперь щелкните любую ячейку, содержащую подключенные данные.
- Снова в меню Данные , cli ck на стрелке рядом с параметром Обновить все и выберите Свойства соединения
- После этого в меню Использование установите параметры которые вы хотите изменить.
- На вкладке Использование установите любые параметры, которые вы хотите изменить.
Примечание. Если размер книги данных Excel большой, я рекомендую регулярно проверять меню Включить фоновое обновление .
Метод № 3: Как автоматически скопировать данные из одной ячейки в другую в Excel
Чтобы скопировать данные из одной ячейки в другую в Excel, просто выполните следующие пункты, указанные ниже:
- Сначала откройте исходный рабочий лист и целевой рабочий лист.
- На исходном листе перейдите к листу, который вы хотите переместить или скопировать.
- Теперь нажмите меню Главная и выберите параметр Формат .
- Затем выберите «Переместить или скопировать лист» в разделе «Организовать листы».
- После этого снова в в меню Главная выберите параметр Формат в группе ячеек.
- Здесь в Переместить или скопировать выберите целевой лист, и Excel отобразит только открытые листы в списке.
- Иначе, если вы хотите скопировать рабочий лист вместо перемещения, сделайте копию книги Excel перед
- Наконец, нажмите ОК кнопку, чтобы скопировать или переместить целевую электронную таблицу Excel.
Метод № 4: Как скопировать данные с одного листа на другой в Excel с помощью формулы
Вы можете копировать данные с одного листа на другой в Excel с помощью формулы . Вот шаги, которые необходимо выполнить:
- Для копирования и вставки ячейки Excel в текущий рабочий лист Excel, , например; скопируйте ячейку От A1 до D5, вы можете просто выбрать целевую ячейку D5, затем ввести = A1 и нажать клавишу Enter, чтобы получить значение A1.
- Для копирования и вставки ячеек с одного рабочего листа на другой, например скопируйте ячейку A1 листа Sheet1 в ячейку D5 листа Sheet2, выберите ячейку D5 на листе Sheet2, затем введите = Sheet1! A1 и нажмите клавишу Enter, чтобы получить значение.
Метод № 5: копирование данных с одного листа на другой в Excel с помощью макросов
С помощью макросов вы можете копировать данные с одного рабочего листа на другой , но перед этим вот несколько важных советов, о которых вы должны позаботиться:
- Правильно сохраняйте расширение файла в вашу книгу Excel.
- Не обязательно, чтобы ваша электронная таблица имела поддержку макросов для выполнения этой задачи.
- Код Выбранные вами файлы также могут быть сохранены на другом листе.
- Поскольку коды уже указывают детали, нет необходимости сначала активировать книгу или ячейки Excel.
- Таким образом, ниже приведен код для выполнения этой задачи.
Sub OpenWorkbook ()
‘Открыть книгу
‘Метод открытия требует ссылки на полный путь к файлу.
Workbooks.Open «C: Users username Documents New Data.xlsx»‘ Метод открытия имеет дополнительные параметры
‘Workbooks.Open (FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)End Sub
Sub CloseWorkbook ()
‘Закройте книгу
Workbooks («New Data.xlsx»). Close SaveChanges: = True
‘Метод Close имеет дополнительные параметры
‘ Workbooks.Close (SaveChanges, Filename, RouteWorkbook)End Sub
Рекомендуемое решение: средство восстановления и восстановления MS Excel
Когда вы выполняете свою работу в MS Excel и по ошибке или случайно делаете это не сохранять данные книги, иначе ваш рабочий лист будет удален, тогда у нас есть для вас профессиональный инструмент восстановления, например MS Excel Repair & Recovery Tool .
С С помощью этого инструмента вы также можете легко восстановить все потерянные данные или поврежденные файлы Excel. Это очень полезное программное обеспечение, позволяющее с легкостью возвращать все типы файлов MS Excel .
Шаги по использованию средства восстановления и восстановления MS Excel:
Заключение:
Ну, я старался изо всех сил, чтобы предоставить наилучшие возможные способы автоматической передачи данных с одного листа Excel на другой. Итак, с этого момента вы не можете нужно беспокоиться о как автоматически копировать данные из одной ячейки в другую в Excel.
Я надеюсь, что вы удовлетворены приведенными выше методами, предоставленными вам по обновлению листа Excel .
Таким образом, используйте их правильно, и в будущем, если вы захотите узнать об этом, вы можете воспользоваться помощью указанных решений.
Маргрет
Маргрет Артур – предприниматель и эксперт по контент-маркетингу. Она ведет технические блоги и специализируется на MS Office, Excel и других технических вопросах. Ее отличительное искусство подачи технической информации простым для понимания языком очень впечатляет. Когда не пишет, она любит незапланированные путешествия.
MicroKnowledge, Inc.
Excel имеет отличный, недостаточно используемый способ извлечения данных из мастер-листа и записи подмножеств этих данных на других листах. Таким образом, Excel может действовать как функциональная база данных с помощью компонента под названием Microsoft Query.
Предположим, у меня есть сводная таблица всех вопросов технической поддержки, заданных в 2013 году, со столбцом под названием Назначено Кому.
Теперь мне нужны три отдельных листа, по одному для каждого представителя службы поддержки в столбце« Кому назначено », которые будут содержать только билеты службы поддержки этого человека. Но в дополнение к этому мне нужно следующее, чтобы быть возможно:
- Новые данные, добавленные в основной лист, будут автоматически заполняться на соответствующих подмножествах листов.
- Мастер-лист можно сортировать и фильтровать сам по себе, не затрагивая подмножества листов.
- Функции и диаграммы, анализирующие данные на любом листе, должны автоматически подстраиваться под новые данные.
Звучит сложно? Это не так!
Приведенные ниже шаги объясняют, как настроить это с помощью Excel 2007 или более поздней версии.
(Эта функция также доступна в предыдущих версиях Excel. )
- Создайте все нужные листы в книге. Здесь я создал лист для каждого представителя службы поддержки.
- Создайте именованный диапазон для своей главной таблицы. Выделите данные в своей таблице (включая заголовки), введите e введите имя диапазона в поле имени слева от строки формул, затем нажмите Enter. Именованный диапазон необходим Microsoft Query для выбора данных для анализа.
- Создайте таблицу из вашей главной таблицы. Выделите свои данные, как описано выше. Откройте вкладку Вставить . Щелкните Таблица . Этот шаг немного избыточен, но преобразование ваших данных в таблицу имеет массу преимуществ, главное из которых состоит в том, что при добавлении в нее новых данных она автоматически расширяется для сбора новых данных. В свою очередь, это также автоматически расширит ваш именованный диапазон.
- Перейдите на лист, на который вы хотите поместить результаты запроса. Это может быть другой рабочий лист или даже другая книга.
- Щелкните вкладку Данные . Нажмите Из других источников . Выберите Из Microsoft Query . Откроется окно Выбрать источник данных .
- Выберите файлы Excel. Нажмите ОК . Откроется окно Выбрать книгу .
- Найдите и выберите книгу для запроса. Обратите внимание, что это может быть та же книга, что и открытая в данный момент. Нажмите ОК . Отображается Мастер запросов .
- Должны появиться ваши именованные диапазоны в левой части окна в виде таблицы. Я выберу все столбцы слева, чтобы показать их на листах подмножества. Щелкните Далее .
- На шаге мастера «Фильтровать данные» выберите фильтрацию данных, которые вы хотите отобразить на этом листе. Здесь я делаю лист Джерри, поэтому мне нужны только данные, где Назначено равно Джерри. Нажмите Далее .
- Выполните оставшиеся шаги в мастера, пока вы не будете готовы выбрать место назначения для ваших данных. В диалоговом окне Импорт данных убедитесь, что Таблица выбрана в качестве способа вставки ваших данных.. Я решил вставить данные в A1 на листе Джерри.
- Поскольку вы вставили данные в качестве таблицы у вас есть особая возможность Обновить, если вы вносите какие-либо изменения в основную таблицу. Вы можете найти Обновить на вкладке «Данные» или на вкладке «Работа с таблицами» Дизайн .
Вам понадобится повторить шаги 4–11 для каждого имеющегося у вас подмножества листов. Но как только все это настроено, у вас есть небольшая симпатичная база данных Excel!
Содержание
- 1 Автозаполнение ячеек данными в Excel
- 1.1 Как сделать автозаполнение ячеек в Excel:
- 2 Принцип действия формулы для автозаполнения ячеек
- 3 Работа автозаполнения в Эксель
- 3.1 Автозаполнение ячеек числами
- 3.2 Инструмент «Заполнить»
- 3.3 Автозаполнение формулами
- 3.4 Автозаполнение другими значениями
- 3.5 Добавление собственных списков
- 3.6 Помогла ли вам эта статья?
- 4 Принцип работы
- 5 Готовые списки в Excel
- 6 Создание своих списков
- 7 Использование прогрессии
- 8 Указание диапазона вставки
- 9 Автозаполнение даты
- 10 Автозаполнение формул
- 11 Отличие версий программы Excel
- 12 Заключение
- 13 Видеоинструкция
На одном из листов рабочей книги Excel, находиться база информации регистрационных данных служебных автомобилей. На втором листе ведется регистр делегации, где вводятся личные данные сотрудников и автомобилей. Один из автомобилей многократно используют сотрудники и каждый раз вводит данные в реестр – это требует лишних временных затрат для оператора. Лучше автоматизировать этот процесс. Для этого нужно создать такую формулу, которая будет автоматически подтягивать информацию об служебном автомобиле из базы данных.
Для наглядности примера схематически отобразим базу регистрационных данных:
Как описано выше регистр находится на отдельном листе Excel и выглядит следующим образом:
Здесь мы реализуем автозаполнение таблицы Excel. Поэтому обратите внимание, что названия заголовков столбцов в обеих таблицах одинаковые, только перетасованы в разном порядке!
Теперь рассмотрим, что нужно сделать чтобы после ввода регистрационного номера в регистр как значение для ячейки столбца A, остальные столбцы автоматически заполнились соответствующими значениями.
Как сделать автозаполнение ячеек в Excel:
- На листе «Регистр» введите в ячейку A2 любой регистрационный номер из столбца E на листе «База данных».
- Теперь в ячейку B2 на листе «Регистр» введите формулу автозаполнения ячеек в Excel:
- Скопируйте эту формулу во все остальные ячейки второй строки для столбцов C, D, E на листе «Регистр».
В результате таблица автоматически заполнилась соответствующими значениями ячеек.
Принцип действия формулы для автозаполнения ячеек
Главную роль в данной формуле играет функция ИНДЕКС. Ее первый аргумент определяет исходную таблицу, находящуюся в базе данных автомобилей. Второй аргумент – это номер строки, который вычисляется с помощью функции ПОИСПОЗ. Данная функция выполняет поиск в диапазоне E2:E9 (в данном случаи по вертикали) с целью определить позицию (в данном случаи номер строки) в таблице на листе «База данных» для ячейки, которая содержит тоже значение, что введено на листе «Регистр» в A2.
Третий аргумент для функции ИНДЕКС – номер столбца. Он так же вычисляется формулой ПОИСКПОЗ с уже другими ее аргументами. Теперь функция ПОИСКПОЗ должна возвращать номер столбца таблицы с листа «База данных», который содержит название заголовка, соответствующего исходному заголовку столбца листа «Регистр». Он указывается ссылкой в первом аргументе функции ПОИСКПОЗ – B$1. Поэтому на этот раз выполняется поиск значения только по первой строке A$1:E$1 (на этот раз по горизонтали) базы регистрационных данных автомобилей. Определяется номер позиции исходного значения (на этот раз номер столбца исходной таблицы) и возвращается в качестве номера столбца для третьего аргумента функции ИНДЕКС.
Скачать пример автозаполнения ячеек из другой таблицы
Благодаря этому формула будет работать даже если порядок столбцов будет перетасован в таблице регистра и базы данных. Естественно формула не будет работать если не будут совпадать названия столбцов в обеих таблицах, по понятным причинам.
Мало кому понравится долго и монотонно вводить одинаковые или однотипные данные в таблицу. Это довольно скучная работа, забирающая большое количество времени. В программе Excel имеется возможность автоматизировать ввод таких данных. Для этого предусмотрена функция автозаполнения ячеек. Посмотрим, как она работает.
Работа автозаполнения в Эксель
Автозаполнение в Microsoft Excel осуществляется с помощью специального маркера заполнения. Для того, чтобы вызвать этот инструмент нужно навести курсор на нижний правый край любой ячейки. Появится небольшой черный крестик. Это и есть маркер заполнения. Нужно просто зажать левую кнопку мыши и потянуть в ту сторону листа, где вы хотите заполнить ячейки.
То, как будут заполняться ячейки, уже зависит от того типа данных, который находится в исходной ячейке. Например, если там будет обычный текст в виде слов, то при перетягивании с помощью маркера заполнения производится его копирование в другие ячейки листа.
Автозаполнение ячеек числами
Чаще всего автозаполнение используется для ввода большого массива чисел, которые следуют по порядку. Например, в определенной ячейке стоит цифра 1, а нам нужно пронумеровать ячейки от 1 до 100.
- Активируем маркер заполнения и проводим им вниз на необходимое количество ячеек.
- Но, как видим, во все ячейки скопировалась только единица. Кликаем на значок, который находится снизу слева от заполненной области и называется «Параметры автозаполнения».
- В открывшемся списке устанавливаем переключатель в пункт «Заполнить».
Как видим, после этого весь нужный диапазон заполнился числами по порядку.
Но можно сделать ещё проще. Вам не нужно будет вызывать параметры автозаполнения. Для этого, когда тянете маркер заполнения вниз, то кроме зажатой левой кнопки мыши, нужно зажать ещё кнопку Ctrl на клавиатуре. После этого, заполнение ячеек числами по порядку происходит сразу же.
Существует также способ сделать автозаполнения ряда прогрессии.
- Вносим в соседние ячейки два первых числа прогрессии.
- Выделяем их. С помощью маркера заполнения вносим данные в другие ячейки.
- Как видим, создается последовательный ряд чисел с заданным шагом.
Инструмент «Заполнить»
В программе Excel есть также отдельный инструмент, которые называется «Заполнить». Расположен он на ленте во вкладке «Главная» в блоке инструментов «Редактирование».
- Заносим данные в любую ячейку, а затем выделяем её и диапазон ячеек, который собираемся заполнить.
- Жмем на кнопку «Заполнить». В появившемся списке выбираем то направление, в которои следует заполнить ячейки.
- Как видим, после этих действий данные из одной ячейки были скопированы во все остальные.
С помощью данного инструмента можно также заполнить ячейки прогрессией.
- Заносим число в ячейку и выделяем диапазон ячеек, который будет заполняться данными. Жмем на кнопку «Заполнить», а в появившемся списке выбираем пункт «Прогрессия».
- Открывается окно настройки прогрессии. Здесь нужно произвести ряд манипуляций:
- выбрать расположение прогрессии (по столбцам или по строкам);
- тип (геометрическая, арифметическая, даты, автозаполнение);
- установить шаг (по умолчанию он равен 1);
- установить предельное значение (необязательный параметр).
Кроме того, в отдельных случаях, устанавливаются единицы измерения.
Когда все настройки внесены, жмем на кнопку «OK».
- Как видим, после этого весь выделенный диапазон ячеек заполняется согласно установленными вами правилами прогрессии.
Автозаполнение формулами
Одним из основных инструментов Excel являются формулы. При наличии в таблице большого числа одинаковых формул можно также воспользоваться функцией автозаполнения. Суть не меняется. Нужно тем же способом маркера заполнения скопировать формулу в другие ячейки. При этом, если в формуле содержатся ссылки на другие ячейки, то по умолчанию при копировании таким способом координаты их меняются по принципу относительности. Поэтому, такие ссылки называют относительными.
Если вы хотите, чтобы при автозаполнении адреса стали фиксированными, то нужно в исходной ячейке перед координатами строк и столбцов поставить знак доллара. Такие ссылки называются абсолютными. Затем, производится обычная процедура автозаполнения с помощью маркера заполнения. Во всех заполненных таким способом ячейках формула будет абсолютно неизменная.
Урок: Абсолютные и относительные ссылки в Excel
Автозаполнение другими значениями
Кроме того, в программе Excel предусмотрено автозаполнение другими значениями по порядку. Например, если вы введете какую-нибудь дату, а затем, воспользовавшись маркером заполнения, выделите другие ячейки, то весь выбранный диапазон окажется заполненный датами в строгой последовательности.
Точно так же, можно произвести автозаполнение по дням недели (понедельник, вторник, среда…) или по месяцам (январь, февраль, март…).
Более того, если в тексте будет любая цифра, то Эксель распознает её. При использовании маркера заполнения произойдет копирование текста с изменением цифры по нарастающей. Например, если вы запишите в ячейку выражение «4 корпус», то в других ячейках, заполненных с помощью маркера заполнения, это название преобразится в «5 корпус», «6 корпус», «7 корпус» и т.д.
Добавление собственных списков
Возможности функции автозаполнения в Excel не ограничивается определенными алгоритмами или предустановленными списками, такими как, например, дни недели. При желании пользователь может в программу добавить свой личный список. Тогда, при записи в ячейку любого слова из элементов, которые находятся в перечне, после применения маркера заполнения, данным списком будет заполнен весь выделенный диапазон ячеек. Для того, чтобы добавить свой список, нужно выполнить такую последовательность действий.
- Делаем переход во вкладку «Файл».
- Переходим в раздел «Параметры».
- Далее, перемещаемся в подраздел «Дополнительно».
- В блоке настроек «Общие» в центральной части окна жмем на кнопку «Изменить списки…».
- Открывается окно списков. В левой его части расположены уже имеющиеся списки. Для того, чтобы добавить новый список записываем нужные слова в поле «Элементы списка». Каждый элемент должен начинаться с новой строки. После того, как все слова записаны, жмем на кнопку «Добавить».
- После этого, окно списков закроется, а при повторном его открытии пользователь сможет увидеть те элементы, которые он добавлял уже в окне активных списков.
- Теперь, после того, как вы в любую ячейку листа внесете слово, которое являлось одним из элементов добавленного списка, и примените маркер заполнения, выделенные ячейки будут заполнены символами из соответствующего списка.
Как видим, автозаполнение в Экселе является очень полезным и удобным инструментом, который позволяет значительно сэкономить время на добавлении одинаковых данных, повторяющихся списков, и т.д. Преимуществом этого инструмента является и то, что он настраиваемый. В него можно вносить новые списки или изменять старые. Кроме того, с помощью автозаполнения можно произвести быстрое заполнение ячеек различными видами математических прогрессий.
Мы рады, что смогли помочь Вам в решении проблемы.
Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
Да Нет
Вниманию профессионалов! Подобная тема поднималась на форуме и раньше (
http://forum.msexcel.ru/microsoft_excel/vyborka_dannyh_iz_listov_odnoy_knigi-t1254.0.html
), но, увы, не была раскрыта. Итак, есть «многолистовая» книга. Данные на листах представляют собой строго регламентированную форму. Задача: свести данные из форм, представленных на 250 листах, в одну таблицу. Имея ссылку типа (=’1′!B8) не могу воспользоваться приёмом автозаполнения так, чтобы при «буксировке» маркера заполнения в ссылках автоматически менялся номер листа. Сами понимаете неблагодарность ручного труда при переименовании 250 ссылок (и это только для одного значения). С уважением и наилучшими пожеланиями.
Эксель – один из лучших редакторов для работы с таблицами на сегодняшний день. В этой программе есть все необходимые функции для работы с любым объемом данных. Кроме того, вы сможете автоматизировать практически каждое действие и работать намного быстрее. В данной статье мы рассмотрим, в каких случаях и как именно можно использовать автозаполнение ячеек в Microsoft Office Excel.
Стоит отметить, что подобные инструменты отсутствуют в программе Microsoft Word. Некоторые пользовали прибегают к хитрости. Заполняют таблицу нужными значениями в Экселе, а затем переносят их в Ворд. Вы можете делать то же самое.
Принцип работы
Настроить автоматический вывод нумерации очень просто. Для этого достаточно сделать несколько очень простых действий.
- Наберите несколько чисел. При этом они должны находиться в одной колонке или одной строке. Кроме этого, желательно, чтобы они шли по возрастанию (порядок играет важную роль).
- Выделите эти цифры.
- Наведите курсор на правый нижний угол последнего элемента и потяните вниз.
- Чем дальше вы будете тянуть, тем больше новых чисел вы увидите.
Тот же принцип работает и с другими значениями. Например, можно написать несколько дней недели. Вы можете использовать как сокращенные, так и полные названия.
- Выделяем наш список.
- Наводим курсор, пока его маркер не изменится.
- Затем потяните вниз.
- В итоге вы увидите следующее.
Эта возможность может использоваться и для статичного текста. Работает это точно так же.
- Напишите на вашем листе какое-нибудь слово.
- Потяните за правый нижний угол на несколько строк вниз.
- В итоге вы увидите целый столбец из одного и того же содержимого.
Таким способом можно облегчить заполнение различных отчётов и бланков (авансовый, КУДиР, ПКО, ТТН и так далее).
Готовые списки в Excel
Более подробно прочитать о том, как работает автозаполнение, и увидеть различные примеры, можно на официальном сайте Майкрософт.
Как видите, вас не просят скачать какие-нибудь бесплатные дополнения. Всё это работает сразу же после установки программы Microsoft Excel.
Создание своих списков
Описанные выше примеры являются стандартными. То есть эти перечисления заданы в Excel по умолчанию. Но иногда бывают ситуации, когда необходимо использовать свои шаблоны. Создать их очень просто. Для настройки вам нужно выполнить несколько совсем несложных манипуляций.
- Перейдите в меню «Файл».
- Откройте раздел «Параметры».
- Кликните на категорию «Дополнительно». Нажмите на кнопку «Изменить списки».
- После этого запустится окно «Списки». Здесь вы сможете добавить или удалить ненужные пункты.
- Добавьте какие-нибудь элементы нового списка. Можете написать, что хотите – на свой выбор. Мы в качестве примера напишем перечисление чисел в текстовом виде. Для ввода нового шаблона нужно нажать на кнопку «Добавить». После этого кликните на «OK».
- Для сохранения изменений снова нажимаем на «OK».
- Напишем первое слово из нашего списка. Необязательно начинать с первого элемента – автозаполнение работает с любой позиции.
- Затем продублируем это содержимое на несколько строк ниже (как это сделать, было написано выше).
- В итоге мы увидим следующий результат.
Благодаря возможностям этого инструмента вы можете включить в список что угодно (как слова, так и цифры).
Использование прогрессии
Если вам лень вручную перетягивать содержимое клеток, то лучше всего использовать автоматический метод. Для этого есть специальный инструмент. Работает он следующим образом.
- Выделите какую-нибудь ячейку с любым значением. Мы в качестве примера будем использовать клетку с цифрой «9».
- Перейдите на вкладку «Главная».
- Нажмите на иконку «Заполнить».
- Выберите пункт «Прогрессия».
- После этого вы сможете настроить:
- расположение заполнения (по строкам или столбцам);
- тип прогрессии (в данном случае выбираем арифметическую);
- шаг прироста новых чисел (можно включить или отключить автоматическое определение шага);
- максимальное значение.
- В качестве примера в графе «Предельное значение» укажем число «15».
- Для продолжения нажимаем на кнопку «OK».
- Результат будет следующим.
Как видите, если бы мы указали предел больше чем «15», то мы бы перезаписали содержимое ячейки со словом «Девять». Единственным минусом данного метода является то, что значения могут выпадать за пределы вашей таблицы.
Указание диапазона вставки
Если ваша прогрессия вышла за рамки допустимых значений и при этом затерла другие данные, то вам придется отменить результат вставки. И повторять процедуру до тех пор, пока вы не подберете конечное число прогрессии.
Но есть и другой способ. Работает он следующим образом.
- Выделите необходимый диапазон ячеек. При этом в первой клетке должно быть начальное значение для автозаполнения.
- Откройте вкладку «Главная».
- Нажмите на иконку «Заполнить».
- Выберите пункт «Прогрессия».
- Обратите внимание, что настройка «Расположение» автоматически указана «По столбцам», поскольку мы выделили ячейки именно в таком виде.
- Нажмите на кнопку «OK».
- В итоге вы увидите следующий результат. Прогрессия заполнена до самого конца и при этом ничего за границы не вышло.
Автозаполнение даты
Подобным образом можно работать с датой или временем. Выполним несколько простых шагов.
- Введем в какую-нибудь клетку любую дату.
- Выделяем любой произвольный диапазон ячеек.
- Откроем вкладку «Главная».
- Кликнем на инструмент «Заполнить».
- Выбираем пункт «Прогрессия».
- В появившемся окне вы увидите, что тип «Дата» активировался автоматически. Если этого не произошло, значит, вы указали число в неправильном формате.
- Для вставки нажмите на «OK».
- Результат будем следующим.
Автозаполнение формул
Помимо этого, в программе Excel можно копировать и формулы. Принцип работы следующий.
- Кликните на какую-нибудь пустую клетку.
- Введите следующую формулу (вам нужно будет скорректировать адрес на ячейку с исходным значением).
=C2*2
- Нажмите на клавишу Enter.
- Затем нужно будет скопировать это выражение во все остальные клетки (как это сделать, было описано немного выше).
- Результат будет следующим.
Отличие версий программы Excel
Все описанные выше методы используются в современных версиях Экселя (2007, 2010, 2013 и 2016 года). В Excel 2003 инструмент прогрессия находится в другом разделе меню. Во всём остальном принцип работы точно такой же.
Для того чтобы настроить автозаполнение ячеек при помощи прогрессии, необходимо совершить следующие весьма простые операции.
- Перейдите на какую-нибудь клетку с любым числовым значением.
- Нажмите на меню «Правка».
- Выберите пункт «Заполнить».
- Затем – «Прогрессия».
- После этого вы увидите точно такое же окно, как и в современных версиях.
Заключение
В данной статье мы рассмотрели различные методы для автозаполнения данных в редакторе Excel. Вы можете применять любой удобный для вас вариант. Если вдруг у вас что-то не получается, возможно, вы используете не тот формат данных.
Обратите внимание на то, что необязательно, чтобы в ячейках значения увеличивались непрерывно. Вы можете использовать любые прогрессии. Например, 1,5,9,13,17 и так далее.
Видеоинструкция
Если у вас возникли какие-нибудь трудности при использовании этого инструмента, дополнительно в помощь можете посмотреть видеоролик с подробными комментариями к описанным выше методам.
Вставка данных из другого листа в Excel
Начинаем заполнять документ данными, необходимыми для вычислений. Сначала укажем стоимость всех товаров в рублях. Можно, конечно, вписывать их вручную, меняя значения почти ежедневно, в зависимости от курса. Но это неправильно. Как сделать так, чтобы программа брала необходимые значения из уже готового документа, в данном случае — из листа «Прайс-лист»? Ведь там все значения уже есть, и цены автоматически вычисляются в зависимости от курса у.е.
Перейдем на лист «Прайс-лист». Посмотрим, что мы здесь имеем. Стоимость первого товара в рублях — доски для сноуборда «Balance» — находится в ячейке «D6». Запомним это.
Переходим на наш лист. Отмечаем ячейку, где должна располагаться цена доски «Balance» в рублях. В данном случае это ячейка «Е2». В строке формул пишем следующее выражение: «=’Прайс-лист’!D6». В апострофах (‘…’) пишем название листа в документе, откуда мы собираемся брать данные. После восклицательного знака идет название ячейки. Ничего сложного.
Отлично! Именно этот результат мы и хотели получить. Теперь нам необходимо только изменять курс у.е. в прайс-листе, а цены в накладной будут изменяться автоматически.
Аналогично вносим формулы вычисления во все остальные ячейки.
Теперь начинаем вычислять сумму купленного товара в каждой строке. Для этого необходимо цену умножить на количество. Правильно?
Подключение к другой книге
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке) .
Вы можете создать динамическое соединение с другой книгой Excel, а затем обновлять подключение при изменении данных в ней.
С помощью функции Получить и преобразовать данные» (Power Query) Excel можно подключиться к книге Excel.
На вкладке Данные щелкните Получить данные > Из файла > Из книги. Если вы не видите кнопки Получить данные, нажмите кнопку Создать запрос и выберите пункты Из файла > Из книги.
Найдите книгу в окне Импорт данных.
В окне Навигатор выберите таблицу или лист, которые вы хотите импортировать, а затем нажмите кнопку Загрузить или Изменить.
В Excel 2010 и 2013 существует два способа подключения к другой книге. Рекомендуется использовать Power Query (для этого нужно скачать надстройку Power Query). Если вам не удается скачать надстройку Power Query, вы можете использовать мастер подключения к данным.
На вкладке ленты Power Query щелкните Из файла > Из Excel.
Перейдите к книге.
В окне Навигатор выберите таблицу или лист, которые вы хотите импортировать, а затем нажмите кнопку Загрузить или Изменить.
Мастер подключения к данным
Шаг 1. Создание подключения к книге
На вкладке Данные нажмите кнопку Подключения.
В диалоговом окне Подключения к книге нажмите кнопку Добавить.
В нижней части диалогового окна Существующие подключения нажмите кнопку Найти другие.
Найдите нужную книгу и нажмите кнопку Открыть.
В диалоговом окне Выбор таблицы выберите нужную таблицу (лист) и нажмите кнопку ОК.
В диалоговом окне Выбор таблицы листы называются таблицами.
Одновременно можно добавить только одну таблицу.
Вы можете переименовать таблицу, нажав кнопку Свойства. Вы также можете добавить описание.
Чтобы добавить дополнительные таблицы, повторите шаги 2–5.
Нажмите кнопку Закрыть.
Шаг 2. Добавление таблиц к листу
Нажмите кнопку Существующие подключения, выберите таблицы и нажмите кнопку Открыть.
В диалоговом окне Импорт данных выберите расположение данных в книге и как их представить: в виде таблицы, сводной диаграммы или сводной таблицы.
Примечание: В Excel 2013 вы можете добавить данные в модель данных, чтобы совмещать их с другими таблицами или данными из других источников, создавать связи между таблицами и пользоваться возможностями, недоступными для простых отчетов сводных таблиц.
Мастер подключения к данным
Шаг 1. Создание подключения к книге
На вкладке Данные нажмите кнопку Подключения.
В диалоговом окне Подключения к книге нажмите кнопку Добавить.
В нижней части диалогового окна Существующие подключения нажмите кнопку Найти другие.
Найдите нужную книгу и нажмите кнопку Открыть.
В диалоговом окне Выбор таблицы выберите нужную таблицу (лист) и нажмите кнопку ОК.
В диалоговом окне Выбор таблицы листы называются таблицами.
Одновременно можно добавить только одну таблицу.
Вы можете переименовать таблицу, нажав кнопку Свойства. Вы также можете добавить описание.
Чтобы добавить дополнительные таблицы, повторите шаги 2–5.
Нажмите кнопку Закрыть.
Шаг 2. Добавление таблиц к листу
Нажмите кнопку Существующие подключения, выберите таблицы и нажмите кнопку Открыть.
В диалоговом окне Импорт данных выберите расположение данных в книге и как их представить: в виде таблицы, сводной диаграммы или сводной таблицы.
Обновление данных книги
После подключения к данным из внешней книги нужно, чтобы в вашей книге всегда отображались новейшие данные. Выберите Данные > Обновить все, чтобы получить новые данные. Дополнительные сведения об обновлении см. в статье Обновление данных, подключенных к другой книге.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Сводные таблицы Excel
Создать простой выпадающий список в ячейке с данными из этого же файла – просто. Все усложняется, когда сам список и данные для него находятся в разных файлах. Для решения этой проблемы есть несколько способов.
Способ 1. Функция ДВССЫЛ
В простом случае можно использовать функцию ДВССЫЛ (INDIRECT), чтобы сформировать правильную ссылку на внешний файл. Например, если необходимо создать выпадающий список с содержимым ячеек А1:А10 с листа Список из файла Товары.xls, нужно открыть окно проверки данных через вкладку Данные – Проверка данных (Data – Validation) и в поле Источник (Source) ввести следующую конструкцию: =ДВССЫЛ(«[Товары.xls]Список!$A$1:$A$10») .
Чтобы сформировать правильную ссылку на внешний файл можно использовать функцию ДВССЫЛ
Функция ДВССЫЛ (INDIRECT) преобразует текстовую строку аргумента в реальный адрес, используемый для ссылки на данные. Обратите внимание, что имя файла заключается в квадратные скобки, а восклицательный знак служит разделителем имени листа и адреса диапазона ячеек. Если имя файла содержит пробелы, то его надо заключить в апострофы.
Если файл с исходными данными для списка лежит в другой папке, необходимо указать полный путь к файлу, например, следующим образом: =ДВССЫЛ(«‘C:Поставщики[Товары.xls]Список’!$A$1:$A$10») . В данном случае не забудьте заключить в апострофы полный путь к файлу и имя листа. Минус этого способа только один – выпадающий список будет корректно работать только в том случае, если файл Товары.xls открыт.
Способ 2. Импорт данных
Суть этого способа в том, что данные для выпадающего списка буду импортироваться из другого файла в текущий. Для этого необходимо создать обновляемую связь между двумя файлами.
Сначала откройте файл-источник, где находятся эталонные значения для выпадающего списка (назовем его, допустим, Справочник.xlsx). Выделите диапазон с данными для списка и отформатируйте его как таблицу с помощью кнопки Форматировать как таблицу на вкладке Главная (Home – Format as Table). Обратите внимание, что у такой таблицы предварительно должна быть сделана «шапка» – строка заголовка. После этого файл Справочник можно сохранить и закрыть.
Теперь откроем книгу, где мы хотим создать выпадающий список (условно назовем ее Бланк.xlsx). Вставим чистый лист (Alt+F11), выберем на вкладке Данные – Существующие подключения – Найти другие (Data – Existing Connections – Browse for more) и укажем наш файл Справочник.xlsx. Появится диалоговое окно, в котором Excel спросит нас о том, какую именно таблицу мы хотим импортировать (если их в файле было несколько).
Теперь откроем книгу, где мы хотим создать выпадающий список
После нажатия на ОК появится еще одно последнее окно, где можно указать удобную ячейку для импорта и, нажав на кнопку Свойства (Properties), задать частоту обновления информации.
После нажатия на ОК появится еще одно последнее окно
Тут можно включить флажок Обновить при открытии файла (Refresh on open), чтобы каждый раз при открытии этой книги иметь последнюю версию списка.
Можно включить флажок Обновить при открытии файла
После нажатия на кнопку ОК, Excel загрузит данные из созданной таблицы из файла Справочник в наш текущий файл Бланк и отформатирует их в виде таблицы.
Excel загрузит данные из созданной таблицы
Если выделить импортированный список (диапазон А2:А7 в нашем случае), то в строке формул можно увидеть его имя, которое он автоматически получает при вставке.
В строке формул можно увидеть имя импортированного списка
Это имя также можно увидеть в Диспетчере имен на вкладке Формулы (Formulas – Name Manager).
Осталось создать выпадающий список, который будет ссылаться на эти данные. Для этого:
- Выделяем ячейки, где хотим создать выпадающие списки.
- На вкладке Данные жмем на кнопку Проверка данных (Data – Validation).
- Выбираем в раскрывающемся списке разрешенных типов данных вариант Список (List) и вводим в поле Источник (Source) следующую формулу: =ДВССЫЛ(«Таблица_Справочник») . В англоязычной версии Excel это будет =INDIRECT(«Таблица_Справочник») .
Осталось создать выпадающий список
Логично было бы ввести просто имя нашего диапазона, но, к сожалению, Microsoft Excel почему-то не воспринимает имена таблиц в поле Источник. Поэтому мы используем тактическую хитрость – функцию ДВССЫЛ (INDIRECT), которая превращает свой аргумент (имя нашей таблицы) в рабочую ссылку.
Все. После нажатия на ОК наш список начнет работать и будет в дальнейшем автоматически обновляться, подгружая данные из другого файла.
После нажатия на ОК список начнет работать и автоматически обновляться
Excel At Excel вып.3: Собираем данные с разных листов
Дано: 22 таблицы унифицированного формата с перечнем помещений от 22 дочерних предприятий.
Задача: сделать сводную таблицу с данными всех 22 таблиц
Итак, решение. Есть три варианта решения данной задачи. Первый — использовать встроенную (начиная с excel 2013) надстройку PowerPivot (об этом методе мы поговорим позднее). Второй — посредством сводной таблицы через несколько диапазонов консолидации. Не люблю этот метод, т.к. такая сводная таблица имеет существенно более ограниченный функционал по сравнению с простой сводной таблицей. Наконец, третий вариант — это создать общую таблицу с использованием функции INDIRECT (ДВССЫЛ). Этому методу и посвятим сегодня наш пост.
Что мы имеем? 22 одинаковых по формату таблицы на отдельных листах и с разным количеством строк в каждой. Соответственно, для построения общей таблицы нам надо решить следующие «проблемы»:
1) как заставить общую таблицу «переключаться» с одного листа данных на другой?;
2) как заставить ее делать это в нужный момент (когда закончились строки на одном листе)?
Начнем со второго вопроса, т.к. ответ на него мы уже знаем. Это циклы, о которых мы подробно говорили в выпуске 2 «Циклы в Excel без VBA». Для решения проблемы достаточно в наш файл добавить лист с перечнем всех обществ, соответствующими названиями листов и количеством подсчетом количества строк на каждом таком листе.
Обратите внимание на формулу в столбце Кол-во записей. Мы могли бы использовать просто COUNTA (СЧЁТА) со ссылкой на каждый лист. Но это потребует времени для «линковки» каждого листа. Плюс мы с вами готовим универсальные решения, которые будут работать в независимости от количества листов.
Именно для этого в функцию COUNTA (СЧЁТА) и внедряется эта чуднАя функция INDIRECT (ДВССЫЛ). Остановимся на ней подробнее.
Функция имеет, по сути, единственный параметр — ref_text (ссылка_на_текст). Что делает эта функция? Всего-навсего преобразует текст в ссылку на ячейку. То есть она преобразует текст, например, «А1» в ссылку и возвращает значение ячейки А1.
Соответственно, зная несложные правила работы с текстом в Excel, мы можем легко сделать текст внутри изменяемым, а значит можем сделать и изменяемыми ссылки, которые будет возвращать функция INDIRECT (ДВССЫЛ).
Разберем пример выше. Функция INDIRECT (ДВССЫЛ) имеет следующий вид:
Чтобы понять, что означает текст внутри нее, давайте вспомним, как выглядит в Excel ссылка на ячейку на другом листе. Вот так:
Соответственно, в нашем случае у нас неизменен столбец B:B, а вот название листа меняется. Для «автоматизации» формулы заменяем Название листа на ссылку на название листа с данными по соответствующему обществу (столбец Название листа). Получаем следующее:
где все, что подчеркнуто — текст, а выделено жирным — ссылки.
ВАЖНО! Обратите внимание на кавычки и конкатенацию («склеивание») при помощи амперсента. Не забудьте, что текст вносится в кавычках и соединяется со ссылками при помощи символа &.
Получается, что INDIRECT (ДВССЫЛ) получает название листа из ячеек в столбце А:А (Название листа), а диапазон у нас прописан фиксированно текстом (В:В). COUNTA (СЧЁТА) же просто считает количество строк в столбце В:В на соответствующем листа за вычетом заголовка.
Перейдем к формированию общей таблицы. Как вы уже наверное прикинули, у нас будет два вложенных цикла: один — количество обществ, второй — количество записей на листе данных по соответствующему обществу. Соответственно, нам потребуются два вспомогательных столбца (определим их в столбцы А и В). Ровно так же, как мы делали на примере в выпуске 2 «Циклы в Excel без VBA», пишем формулу первого цикла:
=IF(A2=»»;»»;IF(COUNTIF($A$2:A2;A2)=OFFSET(‘Список обществ’!$E$2;A2-1;0);IF(A2+1>COUNTA(‘Список обществ’!A:A)-1;»»;A2+1);A2))
Затем пишем формулу второго цикла:
Далее при помощи уже знакомой нам функции OFFSET (СМЕЩ) заполняем столбцы из таблицы на листе Список обществ.
Осталось подтянуть данные с 22 листов по обществам. Тут нам опять поможет OFFSET (СМЕЩ), но уже в паре с INDIRECT (ДВССЫЛ).
OFFSET (СМЕЩ) передает в формулу название листа, а конструкция B2+1 — номер строки в столбце Е на том листе.
ВАЖНО! Обратите внимание, что OFFSET (СМЕЩ) вкладывается внутрь INDIRECT (ДВССЫЛ), а не наоборот.
Трюк №49. Эффективная вставка данных из другой рабочей книги Excel
Используйте данные, находящиеся в другой рабочей книге, как источник для вашей сводной таблицы. При создании сводной таблицы в Excel можно выбирать разнообразные источники данных. Самый простой и мощный подход — использовать данные из этой же рабочей книги.
К сожалению, по определенным причинам это не всегда возможно. Например, данные, находящиеся в другой рабочей книге, вводятся ежедневно, и пользователи, вводящие данные, не должны видеть сводную таблицу. Применение динамических именованных диапазонов существенно сократит время обновления, необходимое для вашей сводной таблицы. Так как невозможно ссылаться на динамический именованный диапазон из другой рабочей книги, это также означает, что ваша сводная таблица не будет ссылаться на тысячи пустых строк, существенно увеличивая размер файла. Таким образом, можно получить данные из другой рабочей книги и после этого основывать сводную таблицу на данных в этой же рабочей книге, а не использовать внешние ссылки.
В рабочей книге, где будет находиться ваша сводная таблица, вставьте новый рабочий лист и присвойте ему имя Data. Откройте рабочую книгу и рабочий лист с нужными данными. В любой пустой ячейке на этом рабочем листе введите формулу =IF(A1=»»;»»;A1) , в русской версии Excel =ЕСЛИ(А1=»»;»»;А1) , где А1 — первый заголовок таблицы данных.
Выделите ячейку А1. Затем вырежьте ее, активируйте исходную рабочую книгу и вставьте ячейку А1 в ячейку А1 на листе Data. Вы получите ссылку на другую рабочую книгу. Скопируйте эту ячейку в такое количество столбцов, сколько заголовков содержит источник данных. Затем выберите команду Формулы → Имя → Присвоить (Formulas → Name → Define) и в поле Имя (Names in workbook) введите PivotData. В поле Формула (Refers to) введите формулу =OFFSET($А$1;0;0;COUNTA($А:$А);COUNTA($1:$1)) , в русской версии Excel =СМЕЩ($А$1;0;0;СЧЁТЗ($А:$А);СЧЁТЗ($1:$1)) .
Щелкните на кнопке Добавить (Add), затем на кнопке ОК. После этого нужно добавить код, который будет выполняться каждый раз при открытии рабочей книги. Правой кнопкой мыши щелкните значок Excel (расположенный в левом верхнем углу окна), в контекстном меню выберите команду Исходный текст (View Code) и введите код из листинга 4.2.
// Листинг 4.2 Private Sub Workbook_0pen() With Worksheets(«Data») .Range(«2:1000»).Clear .Range(«1:1»).AutoFi11 .Range(«1:1000») .Range(«2:1000») = .Range(«2:1000»).Value End With End Sub
Предыдущий код учитывает только 1000 строк данных. Это число должно быть всегда больше количества строк, которое, по вашему мнению, вам понадобится. Другими словами, если таблица в другой рабочей книге содержит 500 строк, добавьте еще несколько сотен, чтобы учесть возможный рост исходной таблицы.
Теперь, если необходимо, можно скрыть этот лист, выбрав команду Формат → Лист → Скрыть (Format → Sheet → Hide) или воспользовавшись способом, описанным в разделе «Трюк №5. Как скрыть лист, чтобы его невозможно было отобразить».
Теперь, чтобы использовать в качестве основы сводной таблицы этот динамический именованный диапазон, выделите любую ячейку сводной таблицы и на панели инструментов Сводные таблицы (PivotTable) выберите команду Сводная таблица → Мастер сводных таблиц (PivotTable → Wizard). Щелкайте кнопку Назад (Back), пока не достигнете шага 1. Установите первый переключатель В списке или базе данных Microsoft Excel (Microsoft Excel List or Database), щелкните на кнопке Далее (Next) и на шаге 2 введите =PivotData (имя динамического именованного диапазона). Щелкните на кнопке Готово (Finish).
Вы не будете страдать от задержки в работе, которая случается, когда сводная таблица ссылается на внешний источник данных, так как сами данные хранятся в той же рабочей книге. Кроме того, коль скоро вы применили динамический именованный диапазон, сводная таблица стала динамической, она не ссылается на множество пустых строк, и размер файла остается допустимым.