<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: dynamically generate multiple work sheets in one excel in ODS and Base Reporting</title>
    <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/dynamically-generate-multiple-work-sheets-in-one-excel/m-p/77821#M8811</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi:&lt;/P&gt;&lt;P&gt;&amp;nbsp; This looks like a stored process. The way a stored process works is to populate 1 sheet of 1 workbook. If you ran the stored process from within the SAS Add-in for Microsoft Office, you would get the results of both PROC REPORT steps in 1 worksheet in 1 workbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; When you do use the SAS Add-in for Microsoft Office, you do have an interactive window that&amp;nbsp; prompts you whether you want the results to go into an existing sheet or a new sheet or a new workbook. What caused you to try &lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;sheet_name &lt;/STRONG&gt;&lt;/SPAN&gt;as a suboption for CSVALL destination? It is not a valid option for TAGSETS.CSVALL destination. You can prove this to yourself (and see the valid suboptions) by using the&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;options(doc='Help')&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;suboption and then looking in the log for the valid suboptions for the CSVALL destination. For your convenience, the valid suboptions for CSVALL, using the SAS 9.3 install are:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;The CSV Tagset Help Text.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;This Tagset/Destination creates output in comma separated value format.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Numbers, Currency and percentages are correctly detected and show as numeric values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Dollar signs, commas and percentages are stripped from numeric values by default.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;These are the options supported by this tagset.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Sample usage:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;ods csv options(doc='Quick');&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;ods csv options(currency_as_number='yes' percentage_as_number='yes' delimiter=';');&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Doc:&amp;nbsp; No default value.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Help: Displays introductory text and options.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Quick: Displays available options.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Delimiter:&amp;nbsp;&amp;nbsp; Default Value ','&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sets the delimiter for the values.&amp;nbsp; Comma is the default.&amp;nbsp; Semi-colon is&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a popular setting for european sites.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;currency_as_number:&amp;nbsp;&amp;nbsp; Default Value 'No'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If 'Yes' currency values will not be quoted.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The currency values are stripped of punctuation and currency symbols&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; so they can be used as a number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;percentage_as_number:&amp;nbsp;&amp;nbsp; Default Value 'No'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If 'Yes' percentage values will not be quoted.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The percentages are stripped of punctuation and the percent sign&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; so they can be used as a number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Currency_symbol:&amp;nbsp;&amp;nbsp; Default Value '$'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used for detection of currency formats and for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; removing those symbols so excel will like them.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Decimal_separator:&amp;nbsp;&amp;nbsp; Default Value '.'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The character used for the decimal point.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Prepend_Equals:&amp;nbsp;&amp;nbsp; Default Value 'no'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Put an equal sign in front of quoted number values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This only works in conjunction with quote_by_type.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;quote_by_type:&amp;nbsp;&amp;nbsp; Default Value 'no'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Put values based on the type, not based on what the regex match for number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Table_Headers:&amp;nbsp;&amp;nbsp; Default Value 'yes'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If no, skip the header section of all tables.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Thousands_separator:&amp;nbsp;&amp;nbsp; Default Value ','&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The character used for indicating thousands in numeric values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used for removing those symbols from numerics so excel will like them.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Quoted_columns:&amp;nbsp;&amp;nbsp; Default Value ''&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A list of column numbers that indicate which values should be quoted&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ie. Quoted_columns="123"&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Bylines:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes bylines will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Titles:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes titles and footnotes will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Notes:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes Note, Warning, Error, and Fatal notes will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Proc_Titles:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes titles generated by the procedures will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; As you can see, there is no "sheet_name" suboption for TAGSETS.CSVALL. Therefore, when you used this suboption, it was ignored. Even if you create a CSV file using the CSVALL destination in SAS, without using the BI Platform or stored processes, you would get the results of both PROC REPORT steps in one worksheet -- this is how Excel would open the CSV file. So, the bottom line is that TAGSETS.CSVALL will never give you a multi-sheet workbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; You might have read something about TAGSETS.EXCELXP -- this is a destination which DOES create multi-sheet workbooks and DOES have a sheet_name suboption. There are many postings in the Stored Process Forum about using TAGSETS.EXCELXP with a stored process on the BI Platform to create a multi-sheet workbook. When the stored process is requested using the Information Delivery Portal or the Stored Process Web Application, then you can get multi-sheet workbooks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; I'd suggest that you investigate the use of TAGSETS.EXCELXP. This destination creates Microsoft-compliant Spreadsheet Markup Language XML, as defined for Office 2003. Microsoft designed this set of XML markup tags to describe a workbook. You will need Office 2003 or higher to correctly render the XML. Another suggestion would be to post your stored process questions to the Stored Process Forum, or at the very least to search the forums for more information about creating multi-sheet workbooks using a stored process. If you continue to have problems with your stored process, then you might also wish to open a track with Tech Support. They can help you figure out how to best write a stored process given your requirements and your BI configuration.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cynthia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 07 Jun 2012 13:41:23 GMT</pubDate>
    <dc:creator>Cynthia_sas</dc:creator>
    <dc:date>2012-06-07T13:41:23Z</dc:date>
    <item>
      <title>dynamically generate multiple work sheets in one excel</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/dynamically-generate-multiple-work-sheets-in-one-excel/m-p/77820#M8810</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I want to have dynamically generate multiple work sheets in one excel. I don't want to store the excel in any location.I want to open the excel directly instead&lt;BR /&gt;of open it from stored location.&lt;/P&gt;&lt;P&gt;When i am using below code, Below both reports are appending in one work sheet instead of two work sheets.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;data _null_;&lt;BR /&gt;&amp;nbsp; rc = stpsrv_header('Content-type','application/vnd.ms-excel');&lt;BR /&gt;&amp;nbsp; rc = stpsrv_header('Content-disposition','attachment; filename=Audit Report for User Roles.csv');&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;ods tagsets.csvall options(sheet_name='report1');&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Proc report data= test1;&lt;BR /&gt;Run;&lt;/P&gt;&lt;P&gt;ods tagsets.csvall options(sheet_name='report2');&lt;/P&gt;&lt;P&gt;Proc report data= test2;&lt;BR /&gt;Run;&lt;BR /&gt;ods tagsets.csvall close;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Could you please help me in this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Jun 2012 12:17:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/dynamically-generate-multiple-work-sheets-in-one-excel/m-p/77820#M8810</guid>
      <dc:creator>sunilreddy</dc:creator>
      <dc:date>2012-06-07T12:17:46Z</dc:date>
    </item>
    <item>
      <title>Re: dynamically generate multiple work sheets in one excel</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/dynamically-generate-multiple-work-sheets-in-one-excel/m-p/77821#M8811</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi:&lt;/P&gt;&lt;P&gt;&amp;nbsp; This looks like a stored process. The way a stored process works is to populate 1 sheet of 1 workbook. If you ran the stored process from within the SAS Add-in for Microsoft Office, you would get the results of both PROC REPORT steps in 1 worksheet in 1 workbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; When you do use the SAS Add-in for Microsoft Office, you do have an interactive window that&amp;nbsp; prompts you whether you want the results to go into an existing sheet or a new sheet or a new workbook. What caused you to try &lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;sheet_name &lt;/STRONG&gt;&lt;/SPAN&gt;as a suboption for CSVALL destination? It is not a valid option for TAGSETS.CSVALL destination. You can prove this to yourself (and see the valid suboptions) by using the&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;STRONG&gt;options(doc='Help')&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;suboption and then looking in the log for the valid suboptions for the CSVALL destination. For your convenience, the valid suboptions for CSVALL, using the SAS 9.3 install are:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;The CSV Tagset Help Text.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;This Tagset/Destination creates output in comma separated value format.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Numbers, Currency and percentages are correctly detected and show as numeric values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Dollar signs, commas and percentages are stripped from numeric values by default.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;These are the options supported by this tagset.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Sample usage:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;ods csv options(doc='Quick');&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;ods csv options(currency_as_number='yes' percentage_as_number='yes' delimiter=';');&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Doc:&amp;nbsp; No default value.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Help: Displays introductory text and options.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Quick: Displays available options.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Delimiter:&amp;nbsp;&amp;nbsp; Default Value ','&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sets the delimiter for the values.&amp;nbsp; Comma is the default.&amp;nbsp; Semi-colon is&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a popular setting for european sites.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;currency_as_number:&amp;nbsp;&amp;nbsp; Default Value 'No'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If 'Yes' currency values will not be quoted.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The currency values are stripped of punctuation and currency symbols&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; so they can be used as a number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;percentage_as_number:&amp;nbsp;&amp;nbsp; Default Value 'No'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If 'Yes' percentage values will not be quoted.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The percentages are stripped of punctuation and the percent sign&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; so they can be used as a number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Currency_symbol:&amp;nbsp;&amp;nbsp; Default Value '$'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used for detection of currency formats and for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; removing those symbols so excel will like them.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Decimal_separator:&amp;nbsp;&amp;nbsp; Default Value '.'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The character used for the decimal point.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Prepend_Equals:&amp;nbsp;&amp;nbsp; Default Value 'no'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Put an equal sign in front of quoted number values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This only works in conjunction with quote_by_type.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;quote_by_type:&amp;nbsp;&amp;nbsp; Default Value 'no'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Put values based on the type, not based on what the regex match for number.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Table_Headers:&amp;nbsp;&amp;nbsp; Default Value 'yes'&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If no, skip the header section of all tables.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Thousands_separator:&amp;nbsp;&amp;nbsp; Default Value ','&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The character used for indicating thousands in numeric values.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used for removing those symbols from numerics so excel will like them.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Will be deprecated in a future release when it is no longer needed.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Quoted_columns:&amp;nbsp;&amp;nbsp; Default Value ''&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A list of column numbers that indicate which values should be quoted&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ie. Quoted_columns="123"&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Bylines:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes bylines will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Titles:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes titles and footnotes will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Notes:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes Note, Warning, Error, and Fatal notes will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;Proc_Titles:&amp;nbsp;&amp;nbsp; Default Value: No&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If yes titles generated by the procedures will be printed&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG style="font-family: courier new,courier;"&gt;==============================================================================&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; As you can see, there is no "sheet_name" suboption for TAGSETS.CSVALL. Therefore, when you used this suboption, it was ignored. Even if you create a CSV file using the CSVALL destination in SAS, without using the BI Platform or stored processes, you would get the results of both PROC REPORT steps in one worksheet -- this is how Excel would open the CSV file. So, the bottom line is that TAGSETS.CSVALL will never give you a multi-sheet workbook.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; You might have read something about TAGSETS.EXCELXP -- this is a destination which DOES create multi-sheet workbooks and DOES have a sheet_name suboption. There are many postings in the Stored Process Forum about using TAGSETS.EXCELXP with a stored process on the BI Platform to create a multi-sheet workbook. When the stored process is requested using the Information Delivery Portal or the Stored Process Web Application, then you can get multi-sheet workbooks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; I'd suggest that you investigate the use of TAGSETS.EXCELXP. This destination creates Microsoft-compliant Spreadsheet Markup Language XML, as defined for Office 2003. Microsoft designed this set of XML markup tags to describe a workbook. You will need Office 2003 or higher to correctly render the XML. Another suggestion would be to post your stored process questions to the Stored Process Forum, or at the very least to search the forums for more information about creating multi-sheet workbooks using a stored process. If you continue to have problems with your stored process, then you might also wish to open a track with Tech Support. They can help you figure out how to best write a stored process given your requirements and your BI configuration.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cynthia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Jun 2012 13:41:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/dynamically-generate-multiple-work-sheets-in-one-excel/m-p/77821#M8811</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2012-06-07T13:41:23Z</dc:date>
    </item>
  </channel>
</rss>

