Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ошибка при работе с экселем OLE error 800A03EC


Кирей ©   (2008-09-09 11:18:00) 

Есть кусок кода:
WorkBook.WorkSheets[1].Range[Cell1, Cell2].merge;
tekst:=tekst+1;
WorkBook.WorkSheets[1].Cells[tekst, 1]:='№ з/п';

если добавляю строку и код приобретает вид:
     
WorkBook.WorkSheets[1].Range[Cell1, Cell2].merge;
WorkBook.WorkSheets[1].Range[Cell1, Cell2].font.bold:=true;
tekst:=tekst+1;
WorkBook.WorkSheets[1].Cells[tekst, 1]:='№ з/п';

вылетает выше указанная ошибка на новой строке


Vlad Oshin   (2008-09-09 12:01:00) [1]

var
XLApp,Workbook,Sheet,Range, Cell1, Cell2:Variant;

 XLApp:= CreateOleObject('Excel.Application');
 XLApp.Visible:=true;
 Workbook := XLApp.WorkBooks.Add;
 Sheet:=WorkBook.ActiveSheet;
//  Range := Sheet.Range['$A$1:$B$2'];
//  range.select;
//  Sheet.PageSetup.PrintArea :=range;
//  Range.NumberFormat:='@';
 cell1:='$A$1';
 cell2:='$A$3';
 range:=Sheet.Range[cell1,cell2];
 range.merge;
 range.font.bold:=true;


Кирей   (2008-09-09 11:53:00) [2]


> а так если?

так работает, получается объединять только после форматирования :(


Сергей М.   (2008-09-09 11:42:00) [3]


> тоесть не хотят работать вместе строки


А у меня хотят.
Вот текст макроса, который успешно работает:

Public Sub xxx()
Range("$A1:$B2").Merge
Range("$A1:$B2").Font.Bold = True
End Sub


Что я делаю не так ?


Vlad Oshin   (2008-09-09 11:40:00) [4]

а так если?
WorkBook.WorkSheets[1].Range[Cell1, Cell2].font.bold:=true;
WorkBook.WorkSheets[1].Range[Cell1, Cell2].merge;


Кирей   (2008-09-09 11:30:00) [5]


> Свойство Cells[] имеет объектный тип, а ты тычешь в него
> строку.

Я его объявил как вариант, строки нормально записываются, исходный вариант работает даже так:

WorkBook.WorkSheets[1].Range[Cell1, Cell2].font.bold:=true;
tekst:=tekst+1;
WorkBook.WorkSheets[1].Cells[tekst, 1]:='№ з/п';


тоесть не хотят работать вместе строки
WorkBook.WorkSheets[1].Range[Cell1, Cell2].merge;
WorkBook.WorkSheets[1].Range[Cell1, Cell2].font.bold:=true;


Сергей М.   (2008-09-09 11:25:00) [6]

Свойство Cells[] имеет объектныйтип, а ты тычешь в него строку.


Наверх

Титульная страница Поиск, карта сайта Написать письмо