Убедитесь, что значения обрабатываются как числовые, когда SQL Reporting 2008 отображает отчет как Excel

Когда я сохраняю отчет SQL в Excel, столбец, содержащий числа, обрабатывается как текст в результирующем файле .xls. В каждой строке ячейка имеет зеленый прямоугольный треугольник и восклицательный знак желтого ромба с надписью «The number in this cell is formatted as text or preceded by an apostrophe.».

Может кто-нибудь объяснить мне, как сделать так, чтобы в отрендеренном отчете не было ошибок для этого столбца? Мои пользователи хотят рассматривать эти ячейки как числовые; т.е. для выполнения вычислений по этим значениям, но они текстовые.


person JonathanWolfson    schedule 25.11.2009    source источник


Ответы (1)


Вы можете обойти это, приведя поле в отчете.

=CDbl(Fields!mycolumn.Value)

Редактировать Приведенный выше пример — это обходной путь, который я всегда использовал для этой проблемы, однако я только что закончил читать сообщение, в котором пользователь отметил, что это не нужно, если вы использовали следующий код.

=IIF(Fields!FieldName.Value=0,Nothing,Fields!FieldName) 

Кажется, это решает проблему и позволяет использовать FormatNumber.

Исходное сообщение можно найти здесь.

person Irwin M. Fletcher    schedule 25.11.2009
comment
Итак, FormatNumber возвращает строку? Как вы сочетаете возможности FormatNumber для вставки запятых, размещения десятичной точки на определенном уровне? - person JonathanWolfson; 25.11.2009
comment
Кроме того, в Excel ячейка может отображаться как текст: 60 000, но ее значение будет числовым: 60 000. Как я могу сделать так, чтобы это произошло в моем файле определения отчетов SQL? - person JonathanWolfson; 25.11.2009