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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.04.2012, 14:14
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
Вопрос Сложение в цикле

Вопрос такого плана. Данные грузятся в цикле. Тут все работает.
Код HTML:
StringGrid2.RowCount:= 39; for i := 1 to 38 do begin StringGrid2.Cells[2,i+3]:= Sheet1.Range['D' + IntToStr(i+3)]; StringGrid2.Cells[3,i+3]:= Sheet1.Range['E' + IntToStr(i+3)]; StringGrid2.Cells[4,i+3]:= Sheet1.Range['G' + IntToStr(i+3)]; StringGrid2.Cells[5,i+3]:= Sheet1.Range['H' + IntToStr(i+3)]; StringGrid2.Cells[6,i+3]:= Sheet1.Range['I' + IntToStr(i+3)]; try StringGrid2.Cells[11,i+3]:= Format('%10.0f', [StrToFloat(Sheet1.Range['J' + IntToStr(i+3)])]); except StringGrid2.Cells[11,i+3]:= Sheet1.Range['J' + IntToStr(i+3)]; end; try StringGrid2.Cells[12,i+3]:= Format('%10.0f', [StrToFloat(Sheet1.Range['J' + IntToStr(i+3)])]); except StringGrid2.Cells[12,i+3]:= Sheet1.Range['J' + IntToStr(i+3)]; end; end; Workbook.Close(0); Ex.Quit; Ex:= UnAssigned; end;
Как видно из кода загрузка в 11 и 12 колонку идет с Sheet1.Range 'J'. Вопрос в том как добавить цифры к загружаемым данным (у меня расчет работы по часам).
Как то так
Код HTML:
"StringGrid2.Cells[12,i+3]:= Sheet1.Range['J' + IntToStr(i+3)] + 3000; "StringGrid2.Cells[13,i+3]:= Sheet1.Range['J' + IntToStr(i+3)] + 5000;
Вроде объяснил
Ответить с цитированием
  #2  
Старый 09.04.2012, 14:50
Аватар для Ildar-tsr
Ildar-tsr Ildar-tsr вне форума
Местный
 
Регистрация: 09.08.2011
Адрес: г.Сургут, ХМАО
Сообщения: 453
Репутация: 7402
По умолчанию


Код:
StringGrid2.Cells[12,i+3]:= IntToStr(StrToInt(VarToStr(Sheet1.Range['J' + IntToStr(i+3)])) + 3000)
?
__________________
Google в помощь
Ответить с цитированием
  #3  
Старый 09.04.2012, 15:10
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
По умолчанию

Цитата:
Сообщение от Ildar-tsr

Код:
StringGrid2.Cells[12,i+3]:= IntToStr(StrToInt(VarToStr(Sheet1.Range['J' + IntToStr(i+3)])) + 3000)
?

Ругается!
IS NOT A VALID INTEGER VALUE
Ответить с цитированием
  #4  
Старый 09.04.2012, 15:54
Аватар для Ildar-tsr
Ildar-tsr Ildar-tsr вне форума
Местный
 
Регистрация: 09.08.2011
Адрес: г.Сургут, ХМАО
Сообщения: 453
Репутация: 7402
По умолчанию

Цитата:
Сообщение от fofka
Ругается!
IS NOT A VALID INTEGER VALUE
Ошибка возникает во время выполнения:
Код:
StrToInt(VarToStr(Sheet1.Range['J' + IntToStr(i+3)]))
Это говорит нам о том, что в Sheet1.Range['J' + IntToStr(i+3)] не целое число.
__________________
Google в помощь
Ответить с цитированием
  #5  
Старый 09.04.2012, 19:03
Аватар для fofka
fofka fofka вне форума
Начинающий
 
Регистрация: 12.10.2008
Сообщения: 163
Репутация: -1588
По умолчанию

Бывает попадает и не целое число, потому и использую ":= Format('%10.0f', [StrToFloat(Sheet1.Range['J' + IntToStr(i+3)])]);"
Вот тут и нужно плюсовать....
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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