Yes, that's exactly the example. It is not specific to PROC REPORT, however. The Microsoft format technique will work with PROC REPORT, PROC PRINT, PROC TABULATE, and in a TABLE template or a STYLE template. The syntax you show is the PROC REPORT syntax, but similar syntax (not exactly the same) will work with other procedures. For example, the PROC PRINT equivalent is shown here:
http://support.sas.com/kb/32/414.html
In your example, the @ tells Excel that you want the number with leading zeroes to be treated as a text string. If you wanted to have a numeric value display leading zeroes, but remain numeric, then you would do:
[pre]
STYLE (COLUMN) = {htmlstyle="mso-number-format:00000"};
[/pre]
But the HTMLSTYLE approach will only work for HTML-based ODS destinations (ODS HTML, ODS MSOFFICE2K, ODS HTMLCSS, etc).
When you use ODS to create files for Excel to open and render, you are not creating true, binary Excel files -- such as you would create with PROC EXPORT or the Excel LIBNAME engine. ODS is only creating ASCII text files that Excel knows how to open and render. So the instructions that you send for a Microsoft format must be in either an HTML (mso-number-format) or an XML specification.
HTML and XML are file types that are openable with Excel -- but they are not "true" .xls or .xlsb files. So, if you name your ODS file with a .XLS extension, Excel will grumble a bit before opening the file in Office 2007 and 2010 with the warning:
The file you are trying to open, '[filename]', is in a different format than
specified by the file extension. Verify that the file is not corrupted and is
from a trusted source before opening the file. Do you want to open the file
now?
Microsoft's thinking behind the warning are described here:
http://blogs.msdn.com/b/vsofficedeveloper/archive/2008/03/11/excel-2007-extension-warning.aspx
So given that you are creating HTML tags with ODS HTML or MSOFFICE2K, the HTMLSTYLE puts a Microsoft format style property (mso-number-format) into the HTML tags being generated so that when the file is rendered by Excel -- it has the instructions for spreadsheet formatting.
TAGSETS.EXCELXP does use a Microsoft format, but via a different mechanism on the SAS side because the XML tags required for Spreadsheet Markup Language XML follow a different form than the HTML. So if you were going to want leading zeroes respected with ODS TAGSETS.EXCELXP, you would do:
[pre]
STYLE (COLUMN) = {tagattr="Format:@"};
OR
STYLE (COLUMN) = {tagattr="Format:00000"};
[/pre]
Some other useful Microsoft formats are listed on page 2 of this paper:
http://www2.sas.com/proceedings/sugi28/012-28.pdf
cynthia