-
Как можно вставить N строк на листе Excel перед какой-то строкой (например 26) из Delhpi. Пробовал: W_Schet.Range['A26','L'+IntToStr(26+N)].Insert; где W_Schet: ExcelWorksheet
на F9 выдает ошибку после Insert; Not enough actual parametrs, а какие нужно написать параметры в Insert(_,_) нигде не нашел.
Помогите, кто знает.
-
А уточни.. Каких именно строк?
-
Можно вставить пустые строки, а можно вставить пустые ячейки A26:L(26+N)
-
По аналогии с http://pda.delphimaster.net/?n=18&id=1178012859Пишем макрос, смотрим как он выглядит и приводим к нужному синтаксису. У меня получилось так: try
app:=GetActiveOleObject('Excel.Application') as ExcelApplication;
App.Visible := True;
App.Rows.item[5].Select;
App.Selection.Insert(xlDown);
finally
App:=Unassigned;
end;
-
-
Нет не срабатывает Insert(xlDown)
var XL: TExcelApplication; WB: ExcelWorkbook; WS_SFACT,WS_NAKL,WS_SCHET: ExcelWorksheet; Range: ExcelRange;
// Открываем EXCEL XL := TExcelApplication.Create(Self); XL.ConnectKind := ckNewInstance; XL.Connect;
// Открываем существующую книгу EXCEL [fTemp] WB := XL.Workbooks.Open(fTemp, 3, False, EmptyParam, EmptyParam, EmptyParam, true, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, true, EmptyParam, EmptyParam, 0);
// Открываем лист ['СЧЕТ_ФАКТУРА'] WS_SFACT := WB.Sheets['СЧЕТ_ФАКТУРА'] as ExcelWorksheet;
// Вставляем пустые ячейки [A26:L26] со сдвигом нижележащих ячеек // существующей таблицы товаров вниз WS_SFACT.Range['A26','L26'].Insert(xlDown);
Здесь пишет ошибку [Not enough actual parametrs]. У Insert должно быть два параметра (Shift: OleVariant,CopyOrigin: OleVariant), а у меня только один Insert(xlDown).
-
2 Егоров А.Н. (03.05.07 11:10) [5] > Здесь пишет ошибку [Not enough actual parametrs].
тка дайте ему два параметра. Если один из параметров Вам не важен, пишите вместо него EmptyParam
-
Справился с Insert(xlDown). Надо было написать:
WS_SFACT.Range['A26','A26'].EntireRow.Insert(xlDown,EmptyParam);
вместо WS_SFACT.Range['A26','L26'].Insert(xlDown);
-
> Справился с Insert(xlDown). > Надо было написать: >
Зависит от того что прописано в uses. У меня Word2000. У тебя, скорее всего WordXP
-
Да OfficeXP.
-
Удалено модератором
-
Удалено модератором
|