Главная страница
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.032 c
14-1106663738
}|{yk
2005-01-25 17:35
2005.02.13
Никто не встречал системы


1-1106676112
tazik
2005-01-25 21:01
2005.02.13
Как обратиться к объекту, если еасть его имя.


1-1106922133
L.asker
2005-01-28 17:22
2005.02.13
Отладчик не останавливает на брекпойнтах


1-1106744457
raidan
2005-01-26 16:00
2005.02.13
Поиск файлов размером более 2.5 Гб


8-1098431365
slim
2004-10-22 11:49
2005.02.13
видео буфер