StringGrid1.Cells[1,1]:=FormatFloat('###,###,###',
StrtoFloatStringGrid1.Cells[1,1]);
위와 같이 코딩해서 StringGrid1에 통화형식으로 입력했습니다.
그런데 다시 StringGrid1에서 위의 형식을 원래의 형식(통화형식이아닌!)으로
변수에 입력받으려면 어떻게 해야 합니까?
(입력한 금액을 다시 정수로 받아 드릴려구요~)
StrAmount:=FormatFloat('#########',StrtoFloat(StringGrid1.Cells[1,1]));
kkk:=strtoint(strAmount);
이렇게 코딩했는데요 코딩은 문제 없는데 실행하면 에러가 생겨요!
답변 좀 주세요~ 감사합니다.
> StringGrid1.Cells[1,1]:=FormatFloat('###,###,###',
> StrtoFloatStringGrid1.Cells[1,1]);
>
> 위와 같이 코딩해서 StringGrid1에 통화형식으로 입력했습니다.
> 그런데 다시 StringGrid1에서 위의 형식을 원래의 형식(통화형식이아닌!)으로
> 변수에 입력받으려면 어떻게 해야 합니까?
> (입력한 금액을 다시 정수로 받아 드릴려구요~)
>
> StrAmount:=FormatFloat('#########',StrtoFloat(StringGrid1.Cells[1,1]));
> kkk:=strtoint(strAmount);
>
> 이렇게 코딩했는데요 코딩은 문제 없는데 실행하면 에러가 생겨요!
> 답변 좀 주세요~ 감사합니다.
>
StrAmount:=FormatFloat('#########',StrtoFloat(StringGrid1.Cells[1,1]));
우선 이문장에서 에라가 나는건 당연한겁니다.
StringGrid1.Cells[1,1]:=FormatFloat('###,###,###',
StrtoFloatStringGrid1.Cells[1,1]);
이곳에선 우선 스트링 그리드에 있는 데이타는 100000000 이런 형식이겠죠..이걸 컴마를 붙이는건 가능합니다. 그런데 100,000,000 이 데이타는 일단은 스트링입니다. 근데 이걸 플롯형으루 다시바꾼다는건 컴마가 있기에 형자체로의 변환이 될수 없답니다.
그렇기 때문에 포멧플롯을하기도 전에 에라가 발생하게 돼는거죠...^^
컴마를 없애고 싶으면 플롯포멧을 하는게 아니라..컴마를 삭제 시켜줘야합니다.
While Pos(',', StrtoFloatStringGrid1.Cells[1,1]) > 0 Do
delete(str_1, Pos(',', StrtoFloatStringGrid1.Cells[1,1]), 1);
이렇게 하시면 될겁니다.
얼마전에두 누군가가 이질문에 답변해줬던걸루 기억하는데...
암턴 즐프하세요...