Форум: "Corba";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизКопирование формата ячейки в Excel из Delphi Найти похожие ветки
← →
Егоров А.Н. (2007-05-03 16:07) [0]Подскажите, как можно скопировать формат из одной группы ячеек строки 1 и вставить этот формат в аналогичные ячейки строк 2-10.
← →
Егоров А.Н. (2007-05-04 08:07) [1]Уточняю вопрос. Имеем отформатированную таблицу на листе WS в книге WB Excel. При этом ячейки A1:C1, D1:S1, T1:W1 объеденены, т.е. имеем три ячейки (группы) обведенных рамкой, каждая со своим форматом. Затем вставляем строки, чтобы увеличить до необходимого количество строк в форматированной таблице.
var
XL: TExcelApplication;
WB: ExcelWorkbook;
WS: ExcelWorksheet;
// Открываем EXCEL
XL := TExcelApplication.Create(Self);
XL.ConnectKind := ckNewInstance;
XL.Connect;
// Открываем книгу WB
WB := XL.Workbooks.Open(fTemp, 3, False,
EmptyParam, EmptyParam, EmptyParam, true, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, true, EmptyParam, EmptyParam, 0);
// Открываем лист WS
WS := WB.Sheets["Накладная"] as ExcelWorksheet;
// Вставляем строки
WS.Range["A1","A1"].EntireRow.Insert(xlDown,EmptyParam);
в итоге имеем строку 2, которая имеет все: формат ячеек, выравнивание, рамки, но пропадает объединение ячеек.
Тот же эфект происходит при копировании строки 1 в строку 2:
WS.Range["A1","W1"].Copy(WS.Range["A2","W2"]);
Можно ли выполнить Copy() в буфер и как это записать, чтобы потом можно было выполнить вставку формата в строку 2:
WS.Range["A2","W2"].PasteSpecial(xlPasteFormats,xlNone,False,False);
← →
Егоров А.Н. (2007-05-04 08:36) [2]Все получилось !!!
WS.Range["A1","W1"].Copy(EmptyParam);
WS.Range["A2","W2"].PasteSpecial(xlPasteFormats,xlNone,False,False);
Страницы: 1 вся ветка
Форум: "Corba";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.087 c