Здравствуйте господа. Есть dll написанная на Delphi (исходников у меня нет) которая открывает шаблон (обычный файл excel) и копирует туда данные. Схема примерно такая Delphi через Ole конектится к Excel 2000 (именно 2000 другая не подходит) и вставляет данные в ячейки. Проблема в том, что ячейки в которых находятся числа с плавающей запятой не распознаются как числа. Из-за этого не работают функции Excel (например СЧЕТЕСЛИ), которые ссылаются на эти ячейки. Причем эта самая dll на других машинах работает нормально. Там Excel правильно распознает числа. Я думал может дело в разделителях дробной и целой части но везде стоит запятая. Все настройки на других машинах одинаковы. Файл я открываю в Excel 2013 и Excel 2003 везде результат одинаков. Может быть в ячейках присутствуют невидимые ссылки? Кто силен в этих вещах посмотрите пожалуйста. Файл прилагаю
На листе Data1 ячейка (R5C10) не распозналась Excel как число. Если ее перебить руками как число то все нормально. Сразу распознается правильно. И так со всеми ячейками с дробными числами.
TheBestOfTheBest Разделители я первым делом посмотрел. У меня есть текстовый файл который потом этой dll запихивается в Excel там запятая стоит. В настройках сиcтемы запятая стоит. Везде запятая. Однако Excel пофиг.
Hugo Дык я о том же. Я чего не понимаю. Функции ДЛСТР() возвращает длину сроки равную количество десятичных знаков + "запятая". Т.е как бы лишних символов нет (или ДЛСТР() не считает невидимые символы). Запятая стоит явно. Что за хрень происходит непонятно.
Умножьте на 1 через спец. вставку. Там даже число перебивать не надо, если дважды щелкнуть на ячейку и нажать ентер сразу распознается, как число, соответственно вряд ли там какие-либо лишние скрытые символы.