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

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

Изменение размера ячеек в Excel из delphi??? [Delphi, Windows]


cad2206 ©   (2004-09-08 15:44:00) 

Подскажите, как?
Строка типа ExcelWorksheet.Rows.Height:=67 вызывает ошибку:
cannot assign to a resd-only property


pavel_guzhanov   (2004-09-09 13:01:00) [1]

var m_XLApp, Sheet, Colum, Row:Variant;
begin  
 m_XLApp:=CreateOleObject('Excel.Application'); //Запуск Excel
 m_XLApp.Visible:=true;   //видимый
 m_XLApp.Workbooks.Add(-4167);  // добавили книгу
 m_XLApp.Workbooks[1].Worksheets[1].Name:='Список сотрудников';
 Sheet:=m_XLApp.Workbooks[1].Worksheets['Список сотрудников'];
 Sheet.PageSetup.Orientation:=xlLandscape;
 Colum:=m_XLApp.Workbooks[1].Worksheets['Список сотрудников'].Columns; //столбцы
 Row:=m_XLApp.Workbooks[1].Worksheets['Список сотрудников'].Rows; //строки
 //ширина столбцов
 Colum.Columns[1].ColumnWidth:=5;
 Colum.Columns[2].ColumnWidth:=16;
 Colum.Columns[3].ColumnWidth:=16;
 Colum.Columns[4].ColumnWidth:=33;
 Colum.Columns[5].ColumnWidth:=23;
 Colum.Columns[6].ColumnWidth:=30;
end;


DarkMan   (2004-09-09 09:53:00) [2]

WorkSeet.Columns['B:B'].RowHeight := xx;

либо
WS.Range[WS.Cells[xx,yy],ExcWS.Cells[xx,yy]].Select;
ExcApp.Selection.RowHeight = xx;


YurikGL   (2004-09-08 21:11:00) [3]

http://www.delphimaster.ru/cgi-bin/anketa.pl?id=1084962208

интересное о себе...


BillyJeans   (2004-09-08 17:34:00) [4]

а может отдельно для каждой строки???


cad2206   (2004-09-08 16:34:00) [5]

Антоныч, эта функция устанавливает размер для всех ячеек на странице, мне нужно отдельно для каждой ячейки...?


Антоныч   (2004-09-08 15:56:00) [6]

Высота и ширина ячейки

Чтобы формировать вид документа в процессе его создания, недостаточно только функций записи информации в ячейки, необходимо также изменять ее визуальные параметры. Самое простое, с чего можно начать, - изменение ширины столбцов и высоты строк. Доступ к ширине столбцов можно получить, используя коллекцию Columns. Используя номер колонки в буквенном или числовом формате и свойство коллекции ColumnWidth, можно изменить ширину столбца или назначить ее. Определенная ниже функция, реализованная на Delphi, устанавливает ширину столбца.

Function SetColumnWidth (sheet:variant;
 column:variant;width:real):boolean;
begin
SetColumnWidth:=true;
try
 ExcelApplication.ActiveWorkbook.Sheets.Item[sheet].Columns
  [column].ColumnWidth:=width;
except
 SetColumnWidth:=false;
end;
End;
Для определения ширины столбца используйте следующий оператор: width:=ExcelApplication.ActiveWorkbook .Sheets.Item[sheet].Columns[column].ColumnWidth;

Доступ к высоте строк можно получить, используя коллекцию Rows. Назначая номер строки и свойство коллекции RowHeight, можно изменить высоту строки или назначить ее. Определенная ниже функция, реализованная на Delphi, устанавливает высоту строки.

Function SetRowHeight (sheet:variant;row:variant;
 height:real):boolean;
begin
SetRowHeight:=true;
try
 ExcelApplication.ActiveWorkbook.Sheets.Item[sheet].Rows[row].RowHeight:=height;
except
 SetRowHeight:=false;
end;
End;
Для определения высоты строки используйте следующий оператор: height:=ExcelApplication.ActiveWorkbook.Sheets.Item[sheet].Rows[row].RowHeight;

Есть подробная документация по взаимодействию Delphi с Word и Excel. Могу выслать на мыло.


Наверх

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