Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 04.06.2012, 15:56
Dzer Dzer вне форума
Прохожий
 
Регистрация: 04.06.2012
Сообщения: 3
Репутация: 10
По умолчанию Сумма данных из нескольких книг Excel, как это сделать?

Помогите кто знает как, я не спец в Delphi и у меня проблема.
В одной папке лежат несколько книг Excel с разными названиями но одинаковыми листами и одинаковыми формами таблиц и различными цифровыми значениями в них, и есть точно такая же таблица вне этой папки но пустая. Надо что бы нажатием одной кнопки программа брала и в пустую таблицу заносила суммы соответствующих ячеек из всех файлов в папке и желательно отображала процент выполнения операции.
Ответить с цитированием
  #2  
Старый 06.06.2012, 05:27
Аватар для Kailon
Kailon Kailon вне форума
Активный
 
Регистрация: 06.06.2010
Сообщения: 340
Версия Delphi: 11.3
Репутация: 429
Сообщение

Думаю эта статья тебе поможет... В ней описаны два компонента для работы с Word и Excel.
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Ответить с цитированием
Этот пользователь сказал Спасибо Kailon за это полезное сообщение:
Dzer (08.06.2012)
  #3  
Старый 08.06.2012, 11:37
Dzer Dzer вне форума
Прохожий
 
Регистрация: 04.06.2012
Сообщения: 3
Репутация: 10
По умолчанию

Спасибо за совет и теперь новая проблема, программа с 97-2000 офисом работает нормально в 2010 офисе вылетает ошибка:
Project ....exe raised exception class EOLeSysError with message 'Член группы не найден'. ...
Вот код с местом где вылетает ошибка:
Код:
            For i := 0 to Form1.Files.Items.Count - 1 do
              begin
                TBook := XLApp.Workbooks.Open(Form1.Files.Items.Strings[i]);
                TBook.Worksheets[1].SaveAs[Path + 'tmp1',3,False];
                TBook.Worksheets[2].SaveAs[Path + 'tmp2',3,False];
                TBook.Close[False];
                ReadFile(1,Xn1,Yn1,Xk1,Yk1,0,0,0,0);
                ReadFile(2,Xn2,Yn2,Xk2,Yk2,0,0,0,0);
              end;
Bargest: не забываем про оформление кода!

Я так понимаю для 2010 офиса как то по другому надо переписать обращение к Екселевской книге, как?

Последний раз редактировалось Bargest, 14.06.2012 в 15:28.
Ответить с цитированием
  #4  
Старый 08.06.2012, 12:28
Аватар для Kailon
Kailon Kailon вне форума
Активный
 
Регистрация: 06.06.2010
Сообщения: 340
Версия Delphi: 11.3
Репутация: 429
Сообщение

Вот с MS Office 2010 я не проверял, так нет него (и не собираюсь даже его ставить ). С 2007 работает нормально.
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Ответить с цитированием
  #5  
Старый 14.06.2012, 09:21
Dzer Dzer вне форума
Прохожий
 
Регистрация: 04.06.2012
Сообщения: 3
Репутация: 10
По умолчанию

C предыдущей ошибкой разобрался, после SaveAs вместо [ скобочек поставил ( скобочки, но теперь другая ошибка. Какой параметр надо добавить в строке
TBook := XLApp.Workbooks.Open(Form1.Files.Items.Strings[i]);
что бы при открытии книг Excel убирались все разделители групп разрядов (в русской версии это пробелы)?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 23:00.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter