Решение, описанное в данной статье поможет просматривать информацию одновременно сразу на нескольких листах(диапазонах) книги. К примеру имеется книга Excel с тремя листами. На каждом листе свои данные: на листе
Все расчеты в приложенном файле носят показательный характер и не могут быть использованы для расчета реального прогноза доходов и прибыли
Для начала нам потребуется добавить одну команду на Панель Быстрого Доступа Excel - команда Камера. Как это сделать:
- для Excel 2003: Вид -Панели инструментов -Настройки -Команды -Сервис -Камера
- для Excel 2007: Кнопка Офис -Параметры Excel -Настройка -Все команды -Камера
- для Excel 2010 и выше: Файл -Параметры Excel -Настройка -Все команды -Камера
После того, как мы вынесли на панель эту команду остается дело за малым. На примере диапазона
- Выделяем диапазон
на листеB2:C13 "План" - Жмем значок Камера на панели. Курсор мыши приобретет вид тоненького крестика
- Переходим обратно на лист "
Факт " и рисуем этим крестиком область, примерно того же размера, что и диапазон или просто щелкаем левой кнопкой мыши на любой ячейке листаB2:C13
Теперь мы видим на листе в выделенной области объект, отображающий всю информацию из "снятого" диапазона листа
Так же подобное можно создать макросом. Как ни странно, но макрорекордер не записывает действие создания инструмента Камера. А между тем код создания весьма прост:
Sub Create_Camera() Sheets("План").Range("B2:C13").Copy 'диапазон, снимок которого надо сделать ActiveSheet.Pictures.Paste(Link:=True).Select 'вставляем на тот же лист, начиная с выделенной ячейки End Sub |
Запускать код надо с того листа, на который необходимо поместить объект Камера. Сам объект будет вставлен в активную ячейку этого листа. А данные для просмотра берутся из диапазона "B2:C13" листа "План" .
Чтобы самим указать, в какую ячейку вставить объект Камера, достаточно перед вставкой активировать нужную ячейку и нужный лист, а в коде указать имя листа, диапазон с которого надо отслеживать, и сам диапазон:
Sub Create_Camera() Sheets("План").Range("B2:C13").Copy 'применяем к диапазону "B2:C13" на "План" 'Sheets("Факт").Activate 'если надо принудительно вставить снимок в другой лист '[E2].Select 'если надо вставить в конкретную ячейку - E2 ActiveSheet.Pictures.Paste(Link:=True).Select 'вставляем снимок в активную ячейку текущего листа End Sub |
Tips_All_Camera.xls (70,0 КиБ, 5 230 скачиваний)
Так же см.:
Как сделать одинаковые изменения сразу на нескольких листах
Зачётно! Только рисунки в каком-то emz получаются...
Отличный инструмент! Спасибо за классный сайт. держи копеечку.