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

Вниз

Excel   Найти похожие ветки 

 
Demir   (2005-02-01 12:57) [0]

Уважаемые мастера!
У меня такой вопрос типа такой
Например,
I := строка;
J := столбец;
I := 1;
J := 1;   -  это строка будет "A"
ExcelWorksheet.Cells.Item[I, J].Value := "385";
I := 2;
J := 2;   -  это строка будет "B"
ExcelWorksheet.Cells.Item[I, J].Value := "542";
Что надо делать чтобы на строке "C" было С=A+B;

Правда, это вопрос чайника
Я только начинающий,так что сразу не бейте.
Заранее благодарен.


 
TUser ©   (2005-02-01 13:16) [1]

Range("C1").Select
ActiveCell.FormulaR1C1 = "RC[-2]+RC[-1]"


 
Sash ©   (2005-02-01 13:26) [2]

можно так

ExcelWorksheet.Cells.Item[3,3].Value:=ExcelWorksheet.Cells.Item[1,1].Value + ExcelWorksheet.Cells.Item[2,2].Value


 
Demir   (2005-02-01 13:52) [3]

Sash ©   (01.02.05 13:26) [2]
можно так

ExcelWorksheet.Cells.Item[3,3].Value:=ExcelWorksheet.Cells.Item[1,1].Value + ExcelWorksheet.Cells.Item[2,2].Value

Вот мои коды

Var
ExcelApplication: TExcelApplication;
ExcelWorkBook: TExcelWorkbook;
ExcelWorkSheet: TExcelWorksheet;
Visible: OleVariant;
FileName: OleVariant;
LCID: Integer;
I, J: OleVariant;
begin
Screen.Cursor := crHourGlass;
Visible := True;

ExcelApplication := TExcelApplication.Create(Self);
ExcelWorkBook := TExcelWorkbook.Create(Self);
ExcelWorkSheet := TExcelWorksheet.Create(Self);
ExcelApplication.ConnectKind := ckNewInstance;
ExcelWorkBook.ConnectKind := ckRunningOrNew;
ExcelWorkSheet.ConnectKind := ckRunningOrNew;

ExcelApplication.Connect;

 ExcelWorkbook.ConnectTo(
  ExcelApplication.Workbooks.Open("c:\aynura\k2.xls", EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam, EmptyParam, LCID));
ExcelWorkSheet.ConnectTo(ExcelWorkbook.Worksheets.Item[1] as _Worksheet);
ExcelApplication.Visible[LCID] := False;
// J - столбец
// I - строка
I := 1;
J := 1;
ExcelWorksheet.Cells.Item[I, J].Value := "385";
I := 1;
J := 2;
ExcelWorksheet.Cells.Item[I, J].Value := "542";
ExcelWorksheet.Disconnect;
ExcelWorkbook.Close(xlSaveChanges);
ExcelWorkbook.Disconnect;
ExcelWorkSheet.Free;
ExcelWorkBook.Free;
ExcelApplication.Disconnect;
ExcelApplication.Free;

Screen.Cursor := crDefault;
end;

end.


 
Demir   (2005-02-01 14:48) [4]

Sash ©   (01.02.05 13:26) [2]
можно так

ExcelWorksheet.Cells.Item[3,3].Value:=ExcelWorksheet.Cells.Item[1,1].Value + ExcelWorksheet.Cells.Item[2,2].Value

не получается же?


 
Digitman ©   (2005-02-01 15:15) [5]


> не получается же?


что "не получается"-то ?

ты вообще как себе мыслишь сложение двух СТРОКОВЫХ значений ?


 
Gloomer ©   (2005-02-01 15:26) [6]

>Digitman ©   (01.02.05 15:15) [5]
>ты вообще как себе мыслишь сложение двух СТРОКОВЫХ значений ?

а может все таки не строковых, а Variant?
у ячейки помимо Value есть Value2.
Выдержка из справки Excel:
The only difference between this property and the Value property is that the Value2 property doesn’t use the Currency and Date data types. You can return values formatted with these data types as floating-point numbers by using the Double data type.



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

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

Наверх




Память: 0.48 MB
Время: 0.048 c
14-1106638398
Чеширский_Кот
2005-01-25 10:33
2005.02.13
Черный бумер vs. Эдита Пьеха


1-1107016985
hamster
2005-01-29 19:43
2005.02.13
Ctrl+Alt


14-1106600041
Pat
2005-01-24 23:54
2005.02.13
$#%@! Да когда же это кончится? В добавление к правам категории В


1-1107035146
Руслана
2005-01-30 00:45
2005.02.13
Вопрос по вызову программы из трея.


3-1105737158
Alex_S
2005-01-15 00:12
2005.02.13
А как отвязать запись от таблицы?