0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 37
1

Import из Excel в HTML

28.04.2014, 10:59. Показов 17158. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток!
По работе понадобилось на сайт написать функцию для импорта данных из excel на страницу, в web программировании я не бум бум, почитав JavaScript два дня, я понял, что мне еще долго, а кнопку как обычно нужно сделать вчера))
немножко погуглив, написал функцию, но она не работает, в документ записывается только первая строка, помогите разобраться или направьте на путь истинный))
вот собственно код:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    function ImportExcel()
      {r.innerHTML+='<br>запуск';}
      var Ex = new ActiveObject ("Excel.Application");  
      var Ex_file = Ex.Workbooks.Open("C:\test.xlsx");
      var Ex_sh = Ex_file.Worksheets("Sheet1");
 
      {r.innerHTML+='<br>как бы цикл должен пойти';}
      {r.innerHTML+='<table border="1">';}
    
   // while not Ex.Eof // или до пустых строк, пока нужно что бы это хоть как то зашевелилось
    
      for(i=0;i<3;i++)     
        {
          r.innerHTML+='<tr>';
          r.innerHTML+='<td>'+Ex_sh.Cells(i,1).value+'</td>';
          r.innerHTML+='</tr>';
        }
       {r.innerHTML+='</table>';}
       {r.innerHTML+='<br>Конец';}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2014, 10:59
Ответы с готовыми решениями:

HTML import
Хочу импортировать в content.html файл header.html, не знаю как, хелп (Нужно это для того, что бы...

COM, Excel, #import в VC++
Здравствуйте! Прошу помочь разобраться почему не пашет #import. Ситуация: Для работы с Excel...

MySQL import Excel
Добрый день,каким образом лучше импортировать таблицу например: ид, имя ,возраст в базу,таблицу...

Import From Excel To Lotus
Народ пытаюсь вытянуть некоторые данные из Excel в Лотус.Подключаюсь с помощью ODBC драйвера,в...

6
26 / 26 / 12
Регистрация: 04.02.2013
Сообщений: 250
28.04.2014, 11:58 2
добрый день

HTML5
1
2
3
4
5
6
7
8
9
10
11
<html>
<head>
    <meta charset="utf-8" />
    <title>Мои рисунки</title>
</head>
<body>
    <input name="btn" type ="button" value ="Press" />
     <div id ="test_div"></div>
 <p></p>
</body>
</html>

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    'use strict';
    window.btn.onclick = function () {
        ImportExcel('C:\\test.xlsx');
    }
     
    function ImportExcel(path) {
 
        var app = new ActiveXObject("Excel.Application"),
            book = app.Workbooks.Open(path);
        //Если хотим увидеть эксель ставим 1 если нет 0
        //app.Visible = 1;
        // Тут через штатные свойства самого экселя, узнаем последнюю строку
        var rows = book.Sheets(1).Range("A:A").SpecialCells(11).Row  // 11 соответствует
        //Путь на лист обычно пишут так книга.лист(интедкс листа).Ячейка(x-ось,y-ось).значение
        var div = document.getElementById('test_div');
 
        for (var i = 1; i <= rows; i++) {
            //созжаем новый элемент
          var newElem = document.createElement('div');
    //вообще по хорошему лучше вытащить массив, но мы просто будем обращаться по адресу
            newElem.innerText = book.Sheets(1).Cells(i, 1).Value;
            div.appendChild(newElem);
        }
        //Нужно закрыть файл, а то будет в памяти компьютера
        app.Quit();
    }

И еще обязательно используйте EI только у него ActiveXObject есть
1
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 37
28.04.2014, 13:12  [ТС] 3
Благодарю, но хотелось и с другими браузерами так же баловаться...
0
26 / 26 / 12
Регистрация: 04.02.2013
Сообщений: 250
28.04.2014, 14:11 4
Дело в том что в Excel есть своя встроенная среда VBA она работает со всеми объектами штатно. В IE есть такой штатный объект, но вот к сожалению в других браузерах такого объекта нет. Для того чтобы работать с Excel файлами нужен фрэймворк, который будет работать с файлом. Более того такая возможно появилась только с html 5 (объект FileReader).

Добавлено через 18 минут
Хотя может еще что-то есть. Просто этим вопросом не занимался.
0
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 37
28.04.2014, 14:38  [ТС] 5
тогда получается лучше решить эту задачу средствами html 5 ?
0
26 / 26 / 12
Регистрация: 04.02.2013
Сообщений: 250
28.04.2014, 16:11 6
Теоретически такой фрэймворк создать можно. FileReader объект может читать файлы, изменять их. В Excel 2007 файлы формата .xlsx это просто заZIPованый xml. Соответственно его можно разархивировать, потом пробежаться по нужным элемента, заменить их и т.п. Но не уверен есть уже такой фрэймворк для js.

Может на Query есть.
1
0 / 0 / 0
Регистрация: 05.08.2013
Сообщений: 37
28.04.2014, 19:19  [ТС] 7
Спасибо за помощь, буду искать, учить))
0
28.04.2014, 19:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.04.2014, 19:19
Помогаю со студенческими работами здесь

Import csv in Excel
Народ подскажите, как загрузить csv на страницу экселя, пишу: Workbooks.OpenText...

Import из Excel в Delphi (Access)
Доброго времени суток. У меня такой вопрос: как делается импорт нужных данных из Excel файла ? Т.е....

MS Office Import from text Excel
Ребят, помогите! Т.к. у меня нет Excel, не могу сам разобраться. В общем в Excel есть ф-ия...

#import библиотеки в зависимости от версии Excel
Добрый день! В своём приложении экспортирую в Excel данные. Сейчас всё настроено под Excel 2013. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru