|
|
|
Запись вещественных данных в Excel
|
|||
|---|---|---|---|
|
#18+
Стоит задача приложениме из C++ Builder3 занести данные в Эксель. Реализовано через ОЛЕ. Открывается файл шаблона. Сохраняется шаблон под тем именем, в которое надо получить искомый файл. Закрывается шаблон. Открывается конечный файл. Запись данных. Закрытие конечного файла. В шаблоне формат ячеек установлен как "Общий". Никаких макросов или защит ячеек/листа. В Билдере берётся массив типа AnsiString, в котором содержатся числа, выводимые в Эксель. Точность чисел - 3 знака почле точки. И с вещественными числами возникла проблема. Данные типа 0,753 или 0,003 или 9,72 выводятся без проблем. А данные типа 22,753 выводятся как 22 753 или же 7389,456 выводятся как 7389 56. И всё это в одном файле. Просматривая форматы ячеек, увидел, что в ячейках, куда выведены числа 0,753 то есть те, которые выводятся как надо, тип ячейки "Общий". А в ячейках, в которые выводятся числа 22 753, то есть неверно, тип ячеек ("Числовой", 0 знаков после точки) Повторюсь, что в шаблонном файле формат для всех ячеек задан как "Общий". Кто с таким сталкивался и чем это лечится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2005, 23:28 |
|
||
|
Запись вещественных данных в Excel
|
|||
|---|---|---|---|
|
#18+
У тебя там точно запятая отделяет десятичную часть? Может лучше точку использовать? Кстати, зачем делается: RuarkЗакрывается шаблон. Открывается конечный файл. Совершенно не нужно закрывать шаблон. После сохранения его под новым именем он уже считается нормальной рабочей книгой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2005, 23:35 |
|
||
|
Запись вещественных данных в Excel
|
|||
|---|---|---|---|
|
#18+
White OwlУ тебя там точно запятая отделяет десятичную часть? Может лучше точку использовать? Кстати, зачем делается: RuarkЗакрывается шаблон. Открывается конечный файл. Совершенно не нужно закрывать шаблон. После сохранения его под новым именем он уже считается нормальной рабочей книгой. Закрываю просто потому шо так приучили:-) А точку... Все данные берутся из оракловской временной таблицы. А там формат вещественных - с запятой. Или ты думаешь что дело именно в точке? Тогад непонятно почему часть чисел интерпретирует нормально, а часть непонятно как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2005, 23:41 |
|
||
|
Запись вещественных данных в Excel
|
|||
|---|---|---|---|
|
#18+
RuarkИли ты думаешь что дело именно в точке? Тогад непонятно почему часть чисел интерпретирует нормально, а часть непонятно как... В точке, в запятой, в разделителях тысяч.... Там много всякого может быть. Попробуй в итоговой таблице сделать формулу типа "=A1+0" для криво показаного числа. Если получишь в итоге нолик, то значит число при экспорте в Эксель превратилось в текст. По каким причинам Эксель его не распознал как число это уже другой вопрос. А национальные различия точка-запятая для десятичной части или пробелы-апострофы-точки для тысяч - это самые вероятные источники ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2005, 00:35 |
|
||
|
Запись вещественных данных в Excel
|
|||
|---|---|---|---|
|
#18+
В том то и дело, что я его как строку хочу записать, у меня строка приведена к тому виду что мне нужно. А в отношении некоторых данных оно воспринимает как строку, а в отношении некоторых воспринимает как число. Почему 0,275 записывает как строку, и формат ячейки "Общий", а 43,275 записывает как 43 275, и формат ячейки становится "Числовой"? Вот это не могу понять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2005, 13:06 |
|
||
|
|

start [/forum/search_topic.php?author=gost%D0%B5&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
84ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 2080ms |
| total: | 2276ms |

| 0 / 0 |
