![]() |
#1 |
Участник
|
![]()
Делаю импорт даных из екселя через таблицу Excel Buffer. Большие числа импортируются в эту табличку с разделителем пробелом. Далее пытаюсь его удалить, пробовала:
str:=DELCHR(ExcelBuf."Cell Value as Text",'=',' '); str:=FORMAT(ExcelBuf."Cell Value as Text",0,2); не помогает ![]() в чем прикол кто знает? PS читала Преобразование Decimal в String но не помогло |
|
![]() |
#2 |
Участник
|
Можно попробовать сразу в Excel Buffer писать значение без пробела, т.е. например,
Код: ExcelBuffer."Cell Value as Text" := FORMAT(Amount,15,1) |
|
![]() |
#3 |
Участник
|
т.е. менять механизм в таблице Excel Buffer?
меня беспокоит почему стандартные функции не работают |
|
![]() |
#4 |
Участник
|
|
|
![]() |
#5 |
Участник
|
|
|
![]() |
#6 |
Участник
|
При експорте делаю так, и работает отлично
"Cell Value as Text" := DELCHR(FORMAT(ЧИСЛО),'=',' ')); Вместо str:=DELCHR(ExcelBuf."Cell Value as Text",'=',' '); Попробуй str1 := ExcelBuf."Cell Value as Text"; str:=DELCHR(str1,'=',' '); |
|
![]() |
#7 |
Участник
|
Достаточно изменить в региональных настройках символ разделителя разрядов и все будет ок.
__________________
Want to believe... |
|
![]() |
#8 |
Участник
|
Я написал так
DelSpace(Item : Code[25]) ItemRes : Code[25] FOR pos:=1 TO STRLEN(Item) DO BEGIN str:=COPYSTR(Item,pos,1); IF str IN ['1','2','3','4','5','6','7','8','9','0'] THEN ItemRes:=ItemRes+str; END; |
|
![]() |
#9 |
Участник
|
Вообще-то вызов DELCHR(string) удаляет пробелы без параметров. можно еще evaluate попробовать.
|
|
![]() |
#10 |
Участник
|
Прогоняй через неё.
Код: DelSpace(LocText : Text[30]) Return : Text[30] FOR step := 1 TO STRLEN (LocText) DO BEGIN Chr := LocText[step]; IF NOT(Chr IN [32, 255]) THEN Return := Return + FORMAT(LocText[step]); END; |
|
|
За это сообщение автора поблагодарили: mira (1). |
![]() |
#11 |
Участник
|
Цитата:
спасибки огромное.. изменение региональных настроек и удаление пробелов с помощью функции DELCHR помогало почему то лишь на некоторых компьютерах.. а эта функция решила проблемы совершенно у всех |
|
![]() |
#12 |
Участник
|
проще уж написать:
DelChar(LocText : Text[30]) Return : Text[30] Chr := 32; Return :=DELCHR(LocText,'=',FORMAT(Chr)); Chr := 255; Return :=DELCHR(LocText,'=',FORMAT(Chr)); |
|