Подтвердить что ты не робот

Как отобразить лист excel в html-странице

Я хочу отобразить лист EXCEL, встроенный в IE, с простым HTML. Я рассмотрел другие вопросы о stackoverflow, но не нашел полезного.

Вот мой html файл

<html>
<body>
<object  width = 900 height = 500 id = "excel"  data="Issues Identified.xlsx" classid = "clsid:0002E55a-0000-0000-C000-000000000046" VIEWASTEXT  >
<param name="DisplayTitleBar" value=true />
<param name="DataType" value="CSVURL"/>
<param name="AutoFit" value="0"/>
<param name="DisplayColHeaders" value="1"/>
<param name="DisplayGridlines" value="1"/>
<param name="DisplayHorizontalScrollBar" value="1"/>
<param name="DisplayRowHeaders" value="1"/>
<param name="DisplayTitleBar" value="1"/>
<param name="DisplayToolbar" value="1"/>
<param name="DisplayVerticalScrollBar" value="1"/>
<param name="EnableAutoCalculate" value="0"/>
<param name="EnableEvents" value="0"/>
<param name="MoveAfterReturn" value="1"/>
<param name="MoveAfterReturnDirection" value="0"/>
<param name="RightToLeft" value="0"/>
</object>
</body>
</html>

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

Когда я пытаюсь загрузить лист excel через код выше. Я получаю следующий экран

enter image description here

Когда я использую IFRAME, листок excel не отображается как встроенный файл, а запрашивает загрузку или открытие. Я хочу, чтобы он был встроен в Internet Explorer.

Любая помощь очень ценится.

Спасибо

4b9b3361

Ответ 1

В зависимости от того, хотите ли вы его автоматически обновить или нет, вы можете просто сохранить таблицу Excel в виде PDF, а затем вставить PDF в качестве объекта -

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

Это лучший способ, который я нашел для загрузки.

Ответ 3

Загрузите файл в Skydrive, а затем щелкните правой кнопкой мыши и выберите "Вставить". Они предоставят фрагмент iframe, который вы можете вставить в свой html. Это работает безупречно.

Источник: Office.com

Ответ 4

Как и вы, я не могу заставить веб-компоненты MS Office работать. Я бы не рассматривал Документы Google, поскольку Google, похоже, считает, что им принадлежит что-либо, что проходит через их руки. Я пробовал MS Publish Objects, но качество сгенерированного html/css действительно ужасно.

Секрет преобразования листа Excel в html, который будет корректно отображаться на смартфоне, - это создать чистый, худой html/css.

Структура HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    HEAD
  </head>
  <body>
    BODY
  </body>
</html>

Есть полезные элементы html, которые могут заменить "HEAD", но мне непонятно, как вы могли бы генерировать их из листа Excel. Их нужно будет добавить отдельно.

Очевидным результатом для рабочего листа или диапазона является таблица html, поэтому следующее предполагает, что BODY будет заменено таблицей html.

Структура таблицы html:

<table TABLE-ATTRIBUTES>
  <tr TABLE-ROW-ATTRIBUTES>
    <td TABLE-CELL-ATTRIBUTES>CELL-VALUE</td>
    More <td>...</td> elements as necessary
  </tr>
  More <tr>...</tr> as necessary
</table>  

Включите как можно меньше TABLE-ATTRIBUTES, TABLE-ROW-ATTRIBUTES и TABLE-CELL-ATTRIBUTES. Не устанавливайте ширину столбцов в пикселях. Используйте атрибуты css, а не атрибуты html.

Стоит учитывать атрибут таблицы style = "border-collapse: collapse;". По умолчанию используется separate с пробелом в каждой ячейке. С collapse ячейки касаются так же, как и с Excel.

Три атрибута таблицы, которые стоит рассмотреть, это style="background-color:aliceblue;", style="color:#0000FF;" и style="text-align:right;". С первым вы можете указать цвет фона как любой из пятидесяти или так называемых цветов html. Со вторым вы можете указать цвет шрифта как 256 * 256 * 256 цветов. С третьим вы можете выровнять числовые значения.

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

Ответ 5

Вы можете использовать iPushPull для перевода прямых данных непосредственно из сеанса Excel в Интернет, где вы можете отображать его в IFRAME (или используя плагин WordPress, если это применимо). Данные в кадре будут обновляться всякий раз, когда обновляются данные на листе.

Функция iPush (...) в ячейке подталкивает данные из Excel в Интернет.

Эта страница поддержки описывает, как внедрить ваши данные Excel на ваш сайт.

Отказ от ответственности - я работаю для iPushPull.

Ответ 6

Если вы создаете ссылку <a href='file.htm'>link name</a> или помещаете тег iframe, она отображает данные Excel в Интернете, но вы не можете вносить в нее изменения.

Каждый раз, когда вы вносите изменения в лист Excel, вам нужно снова сохранить одноименное имя, чтобы он заменил файл и покажет результат. Расширение имени файла тега <a> должно быть .htm

Ответ 7

Обратите внимание, что веб-компоненты Office мертвы, см. does-office-xp-web-components-compatable-with-windows-7. OWC был прекращен с XP по соображениям безопасности.

С тех пор и только недавно Microsoft подталкивает Excel Web App как альтернативу (бедная альтернатива IMHO)

В качестве примечания: Microsoft также отказалась от другой стороны, то есть внедряя элемент управления webbrowser в лист excel, см. adding-web-browser-control-to-excel-2013. В качестве альтернативы Microsoft предлагает Office Apps (очень ограниченную альтернативу для взаимодействия с Excel и IE).

Ответ 8

из здесь вы можете легко преобразовать данные Excel в представление html

Ответ 9

Office 365 и OneDrive предлагают функцию встраивания. Затем вы можете включить через IFrame.

Я обнаружил, что настройка высоты и ширины iframe на 100% лучше всего работает. Таким образом, на ipad или любом устройстве, в этом случае он подходит к экрану.

<body style="margin:0px;padding:0px;overflow:hidden">
    <iframe src="embed url" frameborder="0" style="overflow:hidden;overflow-x:hidden;overflow-y:hidden;height:100%;width:100%;position:absolute;top:0px;left:0px;right:0px;bottom:0px" height="100%" width="100%"></iframe>
</body>

Ответ 10

Возможно, вы можете попробовать в Интернете отправить файл с соответствующим заголовком Content-Type и с заголовком, как это:

Content-Disposition: inline; filename="xxx.xxx"

Вот обсуждение этих заголовков: Как заставить файлы открываться в браузере вместо загрузки (pdf)?

Или просто выполните поиск в google для размещения контента.

Ответ 11

Попробуйте, это сработает...

<iframe src="Tmp.XLS" width="100%" height="500"></iframe>

Но вы не можете сохранить изменения, которые вы сделали... Он используется только для показа цели.