Как получить список рабочих листов в рабочей книге Excel и отобразить их в пользовательском интерфейсе надстройки?

Я пытаюсь выполнить какую-то работу в надстройке Office JS.

Я посмотрел как на Script Lab, так и на боковую загрузку через yeoman.

Я просто не смог найти достаточно примеров кода, чтобы преодолеть трудности, связанные с изучением работы с React / Typescript, помимо изучения самого Office и Excel API.

Было бы здорово, если бы кто-то смог продемонстрировать простое расширение примера "Список рабочих листов" лаборатории сценариев, чтобы поместить список листов в панель задач (дополнительный интерфейс) вместо простого сброса их в console.log().

Кроме того, еще один вопрос: моя цель - перенести некоторый код из скрипта приложения Google Sheets, чтобы мы могли сделать то же самое в Excel. Проект относится только к одной книге и не будет распространяться. Лучше ли делать это в реальном контексте надстройки Office и испытывать побочную загрузку (мы действительно всегда будем запускать отдельный сервер узлов!?) или пытаться делать все это в Script Lab? Мне нравится простота маршрута Script Lab, но я волнуюсь, потому что он намазан предупреждением о том, что он предназначен для экспериментов и создания прототипов, а не для производства.

1 ответ

Решение

По своей сути надстройка Office (веб) - это просто веб-приложение, т. Е. Областью задач является ваш холст (UI), который содержит различные элементы HTML, и вы можете обновлять / манипулировать содержимым панели задач с помощью JavaScript/ машинопись. Таким образом, вы можете записать выходные данные на панель задач, просто указав HTML-элемент (ы), которые будут содержать выходные данные, а затем с помощью JavaScript/TypeScript установите значение элемента (ов).

Например, вы можете указать span элемент в HTML:

<span id="result"></span>

А затем заполните этот элемент через скрипт следующим образом:

$('#result').html('This is the result!');

Я создал фрагмент, который иллюстрирует этот подход для операции List Worksheets. Вы можете попробовать этот фрагмент самостоятельно, используя Script Lab ( https://aka.ms/getscriptlab). Просто установите надстройку Script Lab (бесплатно), затем выберите "Импорт" в меню навигации и используйте следующий URL-адрес Gist: https://gist.github.com/kbrandl/a4a1e4da51385707863aec0ebdf296f6.

Наконец, комментарии относительно вашего последующего вопроса:

  • Script Lab - это экспериментальный инструмент, который можно использовать для изучения разработки надстроек Office; это не официальный продукт Microsoft, он не поддерживается и не предназначен для использования в производственных случаях.
  • Чтобы использовать надстройку в производственном сценарии, рекомендуется развернуть надстройку (веб-приложение) на веб-сервере, а затем использовать любой из доступных методов для публикации надстройки.
Другие вопросы по тегам