Модераторы: MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Excel глючит после связи с Delphi 
:(
    Опции темы
SerGreY
Дата 3.11.2005, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 18.1.2004

Репутация: нет
Всего: нет



Из Делфы при помощи такого кода обращаюсь к Excel:

Код
  ExcelApplication.Connect;
  ExcelApplication.WorkBooks.Add(xlWBatWorkSheet, 0);

  WorkBk := ExcelApplication.WorkBooks.Item[1];
  Worksheet := WorkBk.WorkSheets.Get_Item(1) as _WorkSheet;
  Worksheet.Cells.Item[2,2].Value:='Test';

  ExcelApplication.Visible[0] := True;


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

Это сообщение отредактировал(а) Girder - 3.11.2005, 19:14
PM MAIL   Вверх
Satana
Дата 3.11.2005, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 564
Регистрация: 15.9.2004
Где: Ставрополь, СЗ ра йон

Репутация: нет
Всего: 5



SerGreY Посмотри в DKRB там много толковых советов по поводу интеграции с Excel есть


--------------------
 Работай на себя 
www.abalentsev.com - Сайт портфолио.
www.pokushau.ru - Рецепты со всего мира.
PM MAIL WWW ICQ   Вверх
YURIC
Дата 3.11.2005, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 5.8.2003

Репутация: нет
Всего: 1



Код

var  Excel, WorkBook, WorkSheet: OleVariant;
begin
...
...
try
Excel := CreateOleObject('Excel.Application');
   Excel.Application.EnableEvents:=false;
   WorkBook := Excel.WorkBooks.Add(-4167);
   WorkSheet := Excel.WorkSheets.Add;
   Excel.Workbooks[1].Worksheets[1].Name:='Имя листа';
   WorkSheet.Columns[1].ColumnWidth:=5; //ширина столбца
   WorkSheet.Columns[1].Font.Name:='Arial Cyr'; // Шрифт ячейки
   WorkSheet.Columns[1].Font.Size:=8; // Размер шрифта в ячейки
   WorkSheet.Columns[1].HorizontalAlignment:=3; // Выравнивание (см. Excel2000.pas)
   WorkSheet.Cells[3,1].Orientation := 90; // Ориентация текста в ячейке
   WorkSheet.Cells[3,1].Value :=' Значение ячейки строка 3 столбец 1 ';
   WorkSheet.Rows['1:2'].RowHeight:=15; // высота строки
   WorkSheet.Rows['3:3'].Font.Bold := True; // жирный шрифт в строке
   WorkSheet.Rows['3:3'].HorizontalAlignment:=$FFFFEFF4; // горизонтальное выр-е в строке
   WorkSheet.Rows['3:3'].VerticalAlignment:=$FFFFEFF4; // вертикальное выр-е в строке
   WorkSheet.Cells[3,4].WrapText := True; // перенос текста в ячейке
   WorkSheet.Cells[3,4].Orientation := 90;
finally
Excel.Visible := True;
Excel := Unassigned;
end;


пашет как трактор, проверено
PM MAIL   Вверх
YURIC
Дата 3.11.2005, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 5.8.2003

Репутация: нет
Всего: 1



без всяких глюков

не забудь добавить в Uses ComObj
и сотри оттуда всякие Excel_tlb
PM MAIL   Вверх
YurikGL
Дата 7.11.2005, 20:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 196
Регистрация: 5.7.2005
Где: Уфа

Репутация: 2
Всего: 2



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


ТАкая штука часто возникает, когда до этого не отсоединился от екселя. Т.е. ты где-то сказал connect, а disconnect не сказал и после закрытия твоего приложения реально среди процессов остался один excel.exe. Его видно только в процессах.
--------------------
 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.5524 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.