Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
kertiz
0 / 0 / 2
Регистрация: 30.05.2013
Сообщений: 14
1

Дан файл Excel. Вычислить количество цифр в нем

20.10.2013, 13:22. Просмотров 433. Ответов 2
Метки нет (Все метки)

Задание: Дан файл Excel. Вычислить количество цифр в нем. Сделал считывание с определенной ячейки числа, как доделать?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ExcelXP, OleServer,ComObj,Math;
 
type
  TForm1 = class(TForm)
    btn1: TBitBtn;
    OpenDialog1: TOpenDialog;
    procedure btn1Click(Sender: TObject);
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
   mas:array[1..10]of Integer;
   i,p, k:Integer;
 
implementation
 
{$R *.dfm}
   function ExRangeToVArr(aExSh : Variant; const aRow, aCol : Integer) : Variant;
const
  SelfName = 'ExRangeToVArr()';
var
  exCell1, exCell2 : Variant;
  Row, Col : Integer;
begin
  VarClear(Result);
  if VarIsClear(aExSh) then
    raise Exception.Create(SelfName + ' ');
  exCell1 := aExSh.Cells[aRow, aCol];
  Col := aExSh.UsedRange.Column + aExSh.UsedRange.Columns.Count - 1;
  Row := aExSh.UsedRange.Row + aExSh.UsedRange.Rows.Count - 1;
  if (Row < exCell1.Column) or (Col < exCell1.Column) then
    Exit;
  exCell2 := aExSh.Cells[Row, Col];
  Result := aExSh.Range[exCell1, exCell2].Value;
end;
 
procedure TForm1.btn1Click(Sender: TObject);
const
  Capacity = 10;
var
  exApp, exBook, exSh : Variant;
  VArr : Variant;
  ArrMax : array of TPoint;
  i, j, Cnt, Row, Col : Integer;
  Num, NumMax : Extended;
  Od : TOpenDialog;
positive:integer;
 
     Value:Extended;
      sum: integer;
begin
  Od := OpenDialog1;
  if Od.InitialDir = '' then
    Od.InitialDir := ExtractFilePath( ParamStr(0) );
  if not Od.Execute then Exit;
   exApp := CreateOleObject('Excel.Application');
  try
    exApp.Visible := False;
    exBook := exApp.WorkBooks.Open(FileName:=Od.FileName);
    exSh := exBook.Worksheets[1];
       Sum:=0;
    positive := 0;
    Row:=5;      // здесь считываем номер ячейки
    Col:=4;
      // for i := 1 to VarArrayHighBound(vArr, 1) do
  //  for j := 1 to VarArrayHighBound(vArr, 2) do
 
        positive   :=  exSh.Cells[Row, Col]. Value;
          ShowMessage(InttoStr(positive));
    //  positive:=abs(positive);
   //   while positive>0 do
    //    begin
    //      Sum:=Sum+positive mod 10;
   //       positive:=positive div 10
   //     end;
   //  ShowMessage(InttoStr(sum));
  finally
    exApp.Quit;
  end;
          end;
end.
0
Вложения
Тип файла: rar бета.rar (189.6 Кб, 1 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2013, 13:22
Ответы с готовыми решениями:

Дан файл Excel. Проверить, если в нем слово «мат»
Приветствую, уважаемые посетители :) Вот код программы, который ищет слово...

Дан текстовый файл. Вывести количество содержащихся в нем символов и строк (маркеры концов строк EOLN и конца файла EOF при подсчете количества символ
Дан текстовый файл. Вывести количество содержащихся в нем символов и строк...

Дан произвольный текст. Выяснить, чего в нем больше: русских букв или цифр
Помогите пожалуйста с написанием программы... Дан произвольный текст....

Дан текстовый файл. Продублировать в нем все пустые строки
Всем привет! Дан текстовый файл. Продублировать в нем все пустые строки. :help:

Определить третье положительное число и подсчитать количество цифр в нем
Здравствуйте господа! Никак не могу сообразить как решить задачку с помощью...

2
kertiz
0 / 0 / 2
Регистрация: 30.05.2013
Сообщений: 14
26.10.2013, 15:15  [ТС] 2
Есть какие-нибудь идеи как доделать?
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26341 / 17672 / 6998
Регистрация: 22.10.2011
Сообщений: 31,097
Записей в блоге: 6
26.10.2013, 15:20 3
Ну я же тебе в твоей теме: Определить, каких чисел больше, положительных или отрицательных, в файле xls показывал, как вычислить, каких числе больше, отрицательных, или положительных. Неужели сложно изменить этот подсчет на другой: брать и смотреть в каждой ячейке, сколько в ней цифр (либо вообще везде, либо там, где содержимое ячейки представляет собой запись числа, либо вообще только там, где ячейка содержит одну цифру, потому что по твоим постановкам задач вообще не понятно, чего тебе сделать надо)?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2013, 15:20

Найти третье положительное число в последовательности и подсчитать количество цифр в нем
Осуществить ввод последовательности целых чисел определить третье положительное...

Дан файл, из которого считывается массив n*m. Поменять в нем местами строки с max и min элементами
Дан файл, из которого считывается массив n*m. Поменять в нем местами строки с...

Вычислить количество цифр и сумму цифр произвольного числа
Попалась такая задача,в принципе казало бы не сложная,но для меня создает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru