Отображение excel в браузере

Обновлено: 05.07.2024

В этом приеме описывается три способа получить данные, содержащиеся в веб-странице: вставить статическую копию информации; создать обновляемую ссылку на сайт; открыть страницу непосредственно в Excel.

Вставка статической информации

Один из способов получить данные из веб-страницы на лист — просто выделить текст в браузере, нажать Ctrl+C, чтобы скопировать его в буфер обмена, а затем вставить текст в таблицу. Результат может быть разным, в зависимости от того, какой браузер вы используете. Если это Internet Explorer, то вставленные данные будут, вероятно, очень похожи на оригинал — в комплекте с настройками форматирования, гиперссылками и графикой.

Если вы используете браузер, отличный от Internet Explorer, то, выбрав Главная ► Буфер обмена ► Вставить, можно вставить все, что вы скопировали с веб-страницы, в одну ячейку, а это, скорее всего, не то, чего вы хотите. Решение состоит в том, чтобы выбрать команду Главная ► Буфер обмена ► Вставить ► Специальная вставка, а затем пробовать различные варианты вставки.

Вставка обновляемой информации

Если вы хотите регулярно получать доступ к обновленным данным из веб-страницы, создайте веб-запрос. На рис. 176.1 показан сайт, который содержит курсы валют в таблице с тремя столбцами. Выполнив следующие шаги, можно создать веб-запрос, позволяющий извлекать эту информацию, а затем обновлять ее в любое время одним щелчком кнопкой мыши.

Рис. 176.1. Этот сайт содержит информацию, которая часто меняется

Рис. 176.1. Этот сайт содержит информацию, которая часто меняется

Рис. 176.2. Данные, импортированные из веб-страницы

Рис. 176.2. Данные, импортированные из веб-страницы

По умолчанию импортированные данные — это веб-запрос. Чтобы обновить информацию, щелкните правой кнопкой мыши на любой ячейке импортированного диапазона и выберите в контекстном меню команду Обновить. Если вы не хотите создавать обновляемый запрос, укажите это в шаге 5 предыдущего списка действии. В окне Импорт данных нажмите кнопку Свойства и снимите флажок сохранить определение запроса.

Открытие веб-страницы напрямую

Еще один способ получить данные веб-страницы на лист — открыть URL-адрес напрямую, с помощью команды Файл ► Открыть. Просто введите полный URL-адрес в поле Имя файла и нажмите кнопку Открыть. Результат будет отличаться в зависимости от того, какая разметка у веб-страницы, но в большинстве случаев он вас удовлетворит. Иногда таким способом извлекается довольно много посторонней информации.

Примечание: В ближайшее время мы удалим параметр, описанный в этой теме. Подробные сведения см. ниже.

Предположим, у вас есть книга, которая содержит полезную информацию, которой следует поделиться с коллегами. SharePoint поддерживает параметры просмотра в браузере, указанные вами в Excel 2013. Вы можете выбрать способ отображения книги в окне браузера для других пользователей. Ниже приведены три возможных варианта.

Ниже представлен обзор параметров просмотра книги в браузере и того, как их можно указать.

Отображение книги в представлении коллекции

Примечание: В ближайшее время мы удалим этот параметр. Мы рекомендуем прекратить его использование.

Совет: Для публикации выбранныхчастей книги Power BI панели мониторинга.

При указании параметра для отображения книги в представлении коллекции в окне браузера она выглядит следующим образом:

Пример книги, отображенной в представлении коллекции

Представление коллекции и его функции

В этом представлении один элемент, такой как Сводная диаграмма отображается по центру экрана, в то время как другие элементы показаны в виде эскизов в его правой части. В данном случае "элементом" обычно является сводная диаграмма, например круговая, как показано выше. Центральным элементом может также быть Сводная таблица или диапазон ячеек в качестве именованного элемента.

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

Для просмотра другого элемента в центре экрана необходимо щелкнуть его эскиз (или коснуться его).

Указание параметра для отображения книги в представлении коллекции

В Excel на вкладке Файл выберите команду Параметры просмотра в браузере.

На вкладке Показ выберите в списке пункт Элементы книги.

Выберите именованные элементы, которые нужно опубликовать, и откройте вкладку Параметры.

Если книга содержит срезы или временные шкалы, нажмите кнопку Добавить и выберите срезы, которые нужно опубликовать. Затем нажмите кнопку ОК.

Сохраните и закройте книгу.

Загрузите книгу в библиотеку SharePoint, например, в библиотеку документов.

Отображение книги в представлении листа

При указании параметра для отображения книги в представлении листа в окне браузера она выглядит следующим образом:

Пример книги, отображенной в представлении листа

Представление листа и его функции

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

В нижней части экрана видны вкладки, представляющие дополнительные листы в книге. Для просмотра другого листа необходимо щелкнуть его вкладку.

Указание параметра для отображения книги в представлении листа

В Excel на вкладке Файл выберите команду Параметры просмотра в браузере.

На вкладке Показ выберите в списке пункт Листы. Выберите листы, которые нужно отобразить, и нажмите кнопку ОК.

Сохраните и закройте книгу.

Загрузите книгу в библиотеку SharePoint, например, в библиотеку документов.

Отображение книги в веб-части Excel Web Access

При отображении книги в веб-части Excel Web Access в окне браузера она выглядит следующим образом:

Пример книги, отображенной в веб-части Excel Web Access

Веб-часть Excel Web Access — это контейнер, который служит для отображения содержимого книги Excel на сайте SharePoint. Не нужно щелкать, чтобы открыть книгу для просмотра; в веб-части ее содержимое отображается как часть страницы.

В веб-части Excel Web Access можно отобразить как весь лист, так и отдельные элементы. На рисунке выше отображается весь лист, но можно также отобразить отдельную диаграмму, например круговую.

Не секрет, что Excel довольно мощный инструмент для работы с числовыми табличными данными. Однако средства, которые предоставляет Microsoft для интеграции с ним, далеки от идеала. В частности, сложно интегрировать в Excel современные пользовательские интерфейсы. Нам нужно было дать пользователям Excel возможность работать с довольно насыщенным и функциональным интерфейсом. Мы пошли несколько другим путем, который в итоге показал хороший результат. В этой статье я расскажу, как можно организовать интерактивное взаимодействие Excel c веб-приложением на Angular и расшить Excel практически любым функционалом, который реализуем в современном веб-приложении.




Итак, меня зовут Михаил и я CTO в Exerica. Одна из проблем которые мы решаем — облегчение работы финансовых аналитиков с числовыми данными. Обычно они работают как с исходными документами финансовой и статистической отчетности, так и каким-либо инструментом для создания и поддержания аналитических моделей. Так сложилось, что 99% аналитиков работают в Microsoft Excel и делают там довольно сложные вещи. Поэтому перевести их с Excel на другие решения не эффективно и практически невозможно. Объективно, «облачные» сервисы электронных таблиц до функционала Excel пока не дотягивают. Но в современном мире инструменты должны быть удобны и соответствовать ожиданиям пользователей: открываться по клику мышки, иметь удобный поиск. А реализация в виде разных несвязанных приложений будет довольно далека от ожиданий пользователя.

То с чем работает аналитик выглядит примерно так:


Основные данные тут — это числовые «финансовые показатели», например, доход за 1 квартал 2020 года. Для простоты буду называть их дальше просто «числами». Как видно, почти никакой связи между числами в документе и в аналитической модели нет, все только в голове у аналитика. И работа с заполнением и поддержанием модели занимает часы поиска и перебивания чисел из документа в таблицы, а потом поиск ошибок ввода. Вместе этого мы хотели бы предложить пользователю привычные инструменты: «перетаскивание», вставка через клипборд и так далее, а также быстрый просмотр исходных данных.

Что у нас уже было


Связываем данные

Кроме UDF наш addin реализует ribbon (панель инструментов) с настройками и некоторыми полезными функциями по работе с данными.

Добавляем интерактивность


Вставляем данные в Excel

В нашем SPA мы подсвечиваем все числа, которые обнаружила система. Пользователь может выделять их, навигировать по ним и т.п. Для вставки данных мы реализовали 3 механизма, чтобы закрыть различные варианты использования:

  • Перетаскивание (drag-and-drop)
  • Автоматическая вставка по клику в SPA
  • Копирование и вставка через клипборд

Эти способы хороши, когда пользователю нужно вставлять в свою модель по одному числу, но если надо перенести целую таблицу или ее часть, необходим другой механизм. Наиболее привычным для пользователей представляется копирование через клипборд. Однако этот способ оказался сложнее первых двух. Дело в том, что для удобства вставляемые данные должны быть представлены в нативном для Excel формате — OpenXML Spreadsheet. Наиболее просто это реализуется используя объектную модель Excel, то есть из addin’а. Поэтому процесс формирования клипборда у нас выглядит так:

  • Пользователь выделяет область с числами в SPA
  • Массив выделенных чисел передается на Notification Service
  • Notification Service передает его в addin
  • Addin формирует OpenXML и вставляет его в клипборд
  • Пользователь может вставить данные из клипборда в любое место любой Excel-таблицы.


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

Распространяем данные

После того, как пользователь выбрал начальные данные для своей модели, их надо «распространить» все периоды (года, полугодия и кварталы), которые представляют интерес. Для этих целей одним из параметров нашей UDF является дата (период) данного числа (вспоминаем: «доход за 1 квартал 2020 года»). В Excel существует нативный механизм «распространения» формул, который позволяет заполнить ячейки той же формулой с учетом ссылок, заданных в параметрах. То есть вместо конкретной даты в формулу вставлена ссылка на нее, а далее пользователь «распространяет» ее на другие периоды, при этом в таблицу автоматически загружаются «те же» числа из других периодов.

А что это там за число?

Теперь у пользователя есть модель на несколько сотен строк и несколько десятков столбцов. И у него может возникнуть вопрос, что же там за число в ячейке L123? Чтобы получить ответ, у нас ему достаточно кликнуть на эту ячейку и в нашем SPA откроется тот самый отчет, на той самой странице, где записано кликнутое число, а число в отчете будет выделено. Вот так:


А если это не просто одно число из отчета, а результат некоторых вычислений на числах, взятых из отчета, то мы подсветим все числа, входящие в вычисляемое в Excel выражение. При этом не происходит загрузки всего приложения и подгрузки всех необходимых данных, как в случае перехода по ссылке.

В качестве заключения

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

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

Первый рабочий день. Первая задача в Redmine. Первая спецификация в формате doc. На новой рабочей машине. К чтению спецификации удалось приступить часа через 3. Пока скачался и установился MS Office. Вспоминая этот случай, я был уверен, что в нашей системе управления задачами надо сделать онлайн просмотр документов. Вот только идей по реализации за разумное время и трудозатраты не было. Недавно мы нашли способ – Microsoft Office Web Apps.

В этой статье пойдет речь о том, как добавить онлайн просмотр документов в любой продукт.

Общее представление

Office Web Apps Server(далее OWA) – веб-версия популярного офисного пакета приложений, включает в себя облегченные браузерные приложения Word, Excel, PowerPoint и OneNote.

Доступен для бесплатного скачивания и использования в режиме просмотра документов.

Посмотреть на OWA в действии можно на OneDrive. Несколько документов в режиме чтения:

image


Здесь много скрыто за многоточиями. Но по оставшимся действиям видно, что поддерживаются как документы в формате Microsoft Office, так и Open Office. Помимо просмотра(view) можно открывать документы и на редактирование(edit). Есть мобильная версия(mobileView). OWA умеет генерировать предпросмотр первой страницы документа в виде изображения(imagepreview) и предпросмотр всех страниц документа(interactivepreview).

  • UI_LLCC – предпочитаемый язык в интерфейсе OWA;
  • DC_LLCC – предпочитаемый язык, когда он может повлиять на отображение документа;
  • Showpagestats – отображение служебной статистики.

Откроем в браузере полученный нами чуть ранее URL (*).


Здесь возвращаются только обязательные параметры. Это информация о файле. Еще ряд опциональных параметров описывают, например, можно ли редактировать файл и как, информацию об авторе, поддержку работы с папками, информацию о правах пользователя, нужно ли защищать файл от копирования и тд. Все конфиги описаны здесь.


Собственно все, мы написали необходимый функционал для показа файлов!

Железо

Самое узкое и затратное место во всей этой идее.

Минимальные системные требования:

  • 8 ГБ ОЗУ;
  • 64-разрядный четырехъядерный процессор;
  • 80 ГБ на диске.

Поддерживаемые операционные системы:

  • 64-разрядный Windows Server 2008 R2,
  • 64-разрядный Windows Server 2012 Standard или Datacenter

Сервер обязательно должен быть частью домена, в противном случае OWA просто не установится, я пробовал. Также OWA не будет работать, если установить его на контроллер домена.

А можно ли редактировать документы в браузере?

OWA поддерживает редактирование, но бесплатно можно использовать только просмотр документов. Редактирование требует лицензию.

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