-
Здравствуйте. Как мне через OLE скопировать строку в следующую за ней? Т. е. строка с номером i должна стать копией (с сохранением формата ячеек) строки с номером i-1.
-
Строка 3 становится точной копией строки 2 procedure TForm1.Button1Click(Sender: TObject); Var Exl, WB, Sh: OleVariant; begin Exl := CreateOleObject('Excel.Application'); try WB := exl.Workbooks.Add('C:\Книга1.xls'); Sh:=Wb.WorkSheets[1]; Sh.Rows[2].Copy(Sh.Rows[3]); Exl.Visible := True; finally Exl := Unassigned; WB := Unassigned; Sh := Unassigned; end; end;
-
Хмм... А не подскажите, почему такая проблема... Есть строка, все ячейки строки имеют "Общий" формат. В каждую ячейку строки записываю из Delphi данные из переменной типа String. Проблемы такие: 1) S:= '00365868', записываю это в ячейку "Общего" типа, а в ячейке получаю '365868'. Хотя формат ячейки не изменяется - он всё ещё "Общий". 2) S:= '133,140', записываю это в ячейку общего типа. А в ячейке оказывается '133140' да ещё она меняется в "Числовой" формат. Как бы записывать так, чтобы не менялся тип ячейки, и чтобы записывалось именно то, что я послал?
-
Хотя... Это чё-то я затупил, надо было "Текстовый" формат ставить :).
-
S:= '''00365868'; ?
-
нужно применить Excel.Range[Excel.Rows[1].Columns[1], Excel.Rows[er2].Columns[4]].NumberFormat:='@';; до заполнения, тогда...
|