Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.19;
Скачать: CL | DM;

Вниз

ошибка при работе с экселем OLE error 800A03EC   Найти похожие ветки 

 
Кирей   (2008-09-09 11:18) [0]

Есть кусок кода:
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]:="№ з/п";

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


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

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


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


> Свойство 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;


 
Vlad Oshin ©   (2008-09-09 11:40) [3]

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


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


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


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

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


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


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


> а так если?

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


 
Vlad Oshin ©   (2008-09-09 12:01) [6]

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;



Страницы: 1 вся ветка

Текущий архив: 2008.10.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1219907036
vuk
2008-08-28 11:03
2008.10.19
03.09.08 - King Crimson Festival. Никто не собирается?


15-1219832359
Tricky
2008-08-27 14:19
2008.10.19
Починить или купить новое?


2-1221034964
Demo_nik
2008-09-10 12:22
2008.10.19
Растолкуйте как работает код


2-1218701003
Нов_и_чок
2008-08-14 12:03
2008.10.19
преобразование длинных имен файлов Windows в DOS


15-1220035565
Terasbetoni
2008-08-29 22:46
2008.10.19
Книга "Валерий Фаронов - Искусство создания компонентов Delphi"