Yuriy2301
I used to get this problem "numbers as text" when I started using tagset.excelXP.
My solution was to upgrade to the latest version of tagsets.excelxp from the sas website at
http://support.sas.com/rnd/base/ods/odsmarkup/index.html
You may be experiencing a different problem, because you are outputing from a SAS reporting procedure with format commaXw.d
This might not be recognised by (even) the latest version of tagset.excelXP, by default. However, you can encourage it with excelxp options documented by running the statement
ods tagsets.excelxp file='x.xml' options( doc='all' ) ;
among all the documentation output is a section for NLS [pre]
Currency_format: Default Value 'Currency'
The currency format specified for excel to use.
Another possible value is 'Euro Currency'.
Will be deprecated in a future release when it is
no longer needed.
Decimal_separator: Default Value '.'
The character used for the decimal point.
Will be deprecated in a future release when it is no longer needed.
Thousands_separator: Default Value ','
The character used for indicating thousands in numeric values.
Used for removing those symbols from numerics so excel will like them.
Will be deprecated in a future release when it is no longer needed.[/pre]
notice the reference to "
deprecated in a future release"
so you might want among your tagsets.excelXP options(
Thousands_separator='.'
Decimal_separator=','
a simpler approach works if you don't want the same proc print to write ODS to other destinations at the same time as tagsetx.excelXP. Just send simple number formats from sas with a tagattr='format style something like this custom excel number format
/ style={tagattr='format:#.##0,00'}
unfortunately I cannot test this as these thousand and decimal separators are not the way my regional variations work
good luck
peterC