![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
подсчет символов в ячейке
123456789igor © (2012-11-14 02:22:00)Как подсчитать количество символов в excel таблице через delphi?
oldman (2012-11-15 13:58:00) [1]
> количество символов в excel таблице
Для чисел применяется форматирование отображения.
Видно 2,55, на самом деле в ячейке 2,551859425
Флаг в руки!!!
Dimka Maslov (2012-11-14 21:47:00) [2]Чё то у меня с рейджем не получилось. Думаю, надо таки считать длины в отдельных ячейках и не наприться
AV (2012-11-14 19:32:00) [3]Characters[требует]
Dimka Maslov (2012-11-14 18:40:00) [4]
> // если иначе - засада, копать надо
Range.Characters.Count ?
AV (2012-11-14 13:59:00) [5]
> ThisCell.Characters.Count
если получится - напишите, как именно сделали
что-то ради интереса попробовал - не получается
var
ExcelApp, WorkBook, ActiveSheets: Variant;
Cell1, Cell2,Range: Variant;
R: ExcelXP.ExcelRange;
S:string;
A: Variant;
i,j,n: integer;
begin
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Visible := true;
WorkBook := ExcelApp.WorkBooks.Add('c:\1.xls');
ActiveSheets := WorkBook.WorkSheets[1];
Cell1 := ActiveSheets.Cells[1, 1];
Cell2 := ActiveSheets.Cells[3, 3];
Range := ActiveSheets.Range[Cell1, Cell2];
// если по простому
A := Range.Value;
for i := 1 to 3 do
for j := 1 to 3 do
S := S + string(A[i,j]);
ShowMessage(S + #13#10 + IntToStr(Length(S)));
// если иначе - засада, копать надо
// R := IDispatch(Range) as ExcelRange;
// ShowMessage( IntToStr( R.Characters.Count ));
AV (2012-11-14 11:46:00) [6]а можно еще поробовать ThisCell.Characters.Count
где ThisCell - range из excel
AV (2012-11-14 10:04:00) [7]сложить все ячейки в строку, взять ее длину