Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 31.03.2012, 17:52
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
По умолчанию Загрузка данных в StringGrid

Доброго вечера всем.
Пытаюсь из Excel загрузить данные в StringGrid. Загружаю так
Код HTML:
for i := 1 to 35 do begin StringGrid1.Cells[1,i]:= Sheet1.Range['B' + IntToStr(i+4)];
В принципе все работает, но грузятся знаки после запятой, которые в Экселе не отображаются.

Пробую обрезать знаки после запятой
Код HTML:
StringGrid1.Cells[2,i]:= Format('%10.1f', [StrToFloat(Sheet1.Range['C' + IntToStr(i+4)])]);
в данном примере остается один знак.
Все работает прекрасно, но, до первой пустой ячейки Эксель (такое в документе допускается). Подскажите как обойти данную проблему.
Ответить с цитированием
  #2  
Старый 31.03.2012, 18:08
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

PHP код:
function Prepare(sstring): string;
const 
magic = -42*3.14159
begin
  
if strtofloatdef(smagic ) = magic then
    result 
:= s
  
else
    
result := Format('%10.1f' ....... );
end;

....

StringGrid1.Cells[2,i]:= Prepare(Sheet1.Range[.....]); 
что-то вроде того

Последний раз редактировалось Pyro, 31.03.2012 в 18:11.
Ответить с цитированием
  #3  
Старый 31.03.2012, 18:45
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
По умолчанию

Ругается
PHP код:
result := Format('%10.1f'........ ); 
Ответить с цитированием
  #4  
Старый 31.03.2012, 19:49
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

Цитата:
Пробую обрезать знаки после запятой
Код:
:= Format('%10.1f', [StrToFloat(Sheet1.Range['C' + IntToStr(i+4)])]);
и
Цитата:
Код:
:= Format('%10.1f' ....... );
найдите 10 отличий
Ответить с цитированием
  #5  
Старый 31.03.2012, 20:03
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
По умолчанию

Цитата:
Сообщение от cotseec
и
найдите 10 отличий
Код HTML:
function Prepare(s: string): string; const magic = -42*3.14159; begin if strtofloatdef(s, magic ) = magic then result := s else result := Format('%10.1f', [StrToFloat(Sheet1.Range['C' + IntToStr(i+4)])]); end;
Код HTML:
StringGrid1.RowCount:= 36; for i := 1 to 35 do begin StringGrid1.Cells[2,i]:= Prepare(Sheet1.Range['C' + IntToStr(i+4)]);
В ответ - invalid variant operation

Последний раз редактировалось fofka, 31.03.2012 в 20:19.
Ответить с цитированием
  #6  
Старый 31.03.2012, 20:48
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

Код:
else
    result := Format('%10.1f', [strtofloat(s)]);

Последний раз редактировалось cotseec, 01.04.2012 в 07:53.
Ответить с цитированием
Этот пользователь сказал Спасибо cotseec за это полезное сообщение:
fofka (01.04.2012)
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:44.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025