<?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 Tagset.Excelxp rendering Table header in ODS and Base Reporting</title>
    <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63566#M7459</link>
    <description>Hi i'm trying to render a table header for an excel output.&lt;BR /&gt;
The problem is that i can't merge cells as i prefer. &lt;BR /&gt;
I tried the tagattr mergeDown and mergeAcross, but i guess i used it in a wrong way.&lt;BR /&gt;
&lt;BR /&gt;
Anyway below is the code of the proc template to override the style "sansPrinter" for the table, header, data ...&lt;BR /&gt;
I manage the output with a proc report so i have more options to render the header, but maybe there is another way using the proc print.&lt;BR /&gt;
&lt;BR /&gt;
Basically, i want the cell with the content "Wohnsitzgemeinde" to mergeDown 2 cells and the cell "Berufsauspendler" to mergeAcross 6 cells.&lt;BR /&gt;
The cells with contents "zusammen" and "darunter weiblich" should mergeDown 1 cell each and the cell "im Alter von ... bis unter ... Jahren" to mergeAcross 4 cells.&lt;BR /&gt;
Sorry for german content in cells, but actually the content is not important.&lt;BR /&gt;
This is what i'm trying to get, when i look in the xml code.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;ROW&gt;&lt;BR /&gt;
    &lt;CELL mergedown="2" styleid="s50"&gt;&lt;DATA type="String"&gt;Wohnsitzgemeinde&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergeacross="6" styleid="s50"&gt;&lt;DATA type="String"&gt;Berufsauspendler&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
   &lt;ROW&gt;&lt;BR /&gt;
    &lt;CELL index="2" mergedown="1" styleid="s50"&gt;&lt;DATA type="String"&gt;zusammen&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergedown="1" styleid="s50"&gt;&lt;DATA type="String"&gt;darunter
weiblich&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergeacross="4" styleid="s50"&gt;&lt;DATA type="String"&gt;im Alter von ... bis unter ... Jahren&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
   &lt;ROW height="25.5"&gt;&lt;BR /&gt;
    &lt;CELL index="4" styleid="s52"&gt;&lt;DATA type="String"&gt;unter
25&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;25 - 35&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;35 - 45&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;45 - 65&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;65
und mehr&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
&lt;BR /&gt;
And this is what i get :&lt;BR /&gt;
&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="1"&gt;&lt;DATA type="String"&gt;&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="6" index="2"&gt;&lt;DATA type="String"&gt;Berufsauspendler&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="2" index="1"&gt;&lt;DATA type="String"&gt;&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="4" index="4"&gt;&lt;DATA type="String"&gt;im Alter von ... bis unter ... Jahren&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="1"&gt;&lt;DATA type="String"&gt;Wohnsitzgemeinde&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="2"&gt;&lt;DATA type="String"&gt;zusammen&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="3"&gt;&lt;DATA type="String"&gt;darunter
weiblich&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="4"&gt;&lt;DATA type="String"&gt;unter
25&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="5"&gt;&lt;DATA type="String"&gt;25 - 35&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="6"&gt;&lt;DATA type="String"&gt;35 - 45&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="7"&gt;&lt;DATA type="String"&gt;45 - 65&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="8"&gt;&lt;DATA type="String"&gt;65
und mehr&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
How can i use the tagattr mergeDown and mergeAcross to receive the first table header?&lt;BR /&gt;
&lt;BR /&gt;
Here my code:&lt;BR /&gt;
&lt;BR /&gt;
proc template;&lt;BR /&gt;
	define style styles.XLsansPrinter;&lt;BR /&gt;
		parent=styles.sansPrinter;&lt;BR /&gt;
&lt;BR /&gt;
style table from output /&lt;BR /&gt;
	color=black                &lt;BR /&gt;
	background=white	&lt;BR /&gt;
	borderrightwidth=0.75pt &lt;BR /&gt;
                   borderleftwidth=0.75pt&lt;BR /&gt;
	bordertopwidth=0.75pt&lt;BR /&gt;
 	borderbottomwidth=0.75pt&lt;BR /&gt;
	cellspacing=0pt&lt;BR /&gt;
	cellpadding=3pt;&lt;BR /&gt;
&lt;BR /&gt;
style body from body / &lt;BR /&gt;
	margintop=.5in &lt;BR /&gt;
	marginbottom=.5in&lt;BR /&gt;
	marginleft=.25in&lt;BR /&gt;
	marginright=.25in;&lt;BR /&gt;
&lt;BR /&gt;
style cell from container /&lt;BR /&gt;
	borderrightwidth=0pt &lt;BR /&gt;
                	borderleftwidth=0pt&lt;BR /&gt;
	bordertopwidth=0pt&lt;BR /&gt;
 	borderbottomwidth=0pt;&lt;BR /&gt;
&lt;BR /&gt;
style header from header /&lt;BR /&gt;
	backgroundcolor=white&lt;BR /&gt;
	fontsize=10pt&lt;BR /&gt;
	textalign=center&lt;BR /&gt;
	verticalalign=middle;&lt;BR /&gt;
&lt;BR /&gt;
style header_tab2 from header /&lt;BR /&gt;
	&lt;B&gt;tagattr='mergeDown:2'&lt;/B&gt;;&lt;BR /&gt;
&lt;BR /&gt;
style data_all from data /&lt;BR /&gt;
	background=white&lt;BR /&gt;
	font_size=10pt&lt;BR /&gt;
	just=right;&lt;BR /&gt;
&lt;BR /&gt;
style data_ags from data_all /&lt;BR /&gt;
	just=center&lt;BR /&gt;
	tagattr='format:Text';&lt;BR /&gt;
&lt;BR /&gt;
end;&lt;BR /&gt;
run; quit;&lt;BR /&gt;
&lt;BR /&gt;
ods listing close;&lt;BR /&gt;
	ods tagsets.excelxp file="&amp;amp;g_ProjektVerzeichnis\ausgabe\tab2a.xml"&lt;BR /&gt;
		style=XLsansPrinter &lt;BR /&gt;
		options(embedded_titles='yes'&lt;BR /&gt;
				suppress_bylines='yes'&lt;BR /&gt;
				sheet_interval='none' &lt;BR /&gt;
				sheet_name="Tab2a"&lt;BR /&gt;
				center_horizontal='yes' &lt;BR /&gt;
				center_vertical='yes' &lt;BR /&gt;
				autofit_height='yes'&lt;BR /&gt;
				row_repeat='1-5'&lt;BR /&gt;
				absolut_column_width='10, 10, 10, 10, 12');&lt;BR /&gt;
&lt;BR /&gt;
ods escapechar='^';&lt;BR /&gt;
&lt;BR /&gt;
title1 bold justify=left 'Tab.: 2a. Berufsauspendler nach Geschlecht und Altersgruppen';&lt;BR /&gt;
&lt;BR /&gt;
proc report data = work.tabelle2a nowindows spanrows split='^';&lt;BR /&gt;
		where (substr(Wohnort,1,2)='05');&lt;BR /&gt;
		&lt;BR /&gt;
columns    Wohnort&lt;BR /&gt;
	("Berufsauspendler" (insgesamt weiblich &lt;BR /&gt;
	("im Alter von ... bis unter ... Jahren" u25 u35 u45 u65 ue65)));&lt;BR /&gt;
	&lt;BR /&gt;
define Wohnort / order "Wohnsitzgemeinde" style(header)=&lt;B&gt;header_tab2&lt;/B&gt;&lt;BR /&gt;
				     style(column)=data_ags;&lt;BR /&gt;
define insgesamt / analysis "zusammen"    style(header)=header &lt;BR /&gt;
				    style(column)=data_all;&lt;BR /&gt;
define weiblich / analysis "darunter^weiblich" style(header)=header &lt;BR /&gt;
				       style(column)=data_all;&lt;BR /&gt;
define u25 / analysis "unter^25" 	style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u35 / analysis "25 - 35" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u45 / analysis "35 - 45" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u65 / analysis "45 - 65" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define ue65 / analysis "65^und mehr" 	style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
  &lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
ods tagsets.excelxp close;&lt;BR /&gt;
ods listing;&lt;BR /&gt;
&lt;BR /&gt;
I hope you could understand my problem.&lt;/CELL&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/ROW&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/ROW&gt;&lt;/CELL&gt;&lt;/ROW&gt;</description>
    <pubDate>Mon, 09 May 2011 12:16:59 GMT</pubDate>
    <dc:creator>Domenico</dc:creator>
    <dc:date>2011-05-09T12:16:59Z</dc:date>
    <item>
      <title>Tagset.Excelxp rendering Table header</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63566#M7459</link>
      <description>Hi i'm trying to render a table header for an excel output.&lt;BR /&gt;
The problem is that i can't merge cells as i prefer. &lt;BR /&gt;
I tried the tagattr mergeDown and mergeAcross, but i guess i used it in a wrong way.&lt;BR /&gt;
&lt;BR /&gt;
Anyway below is the code of the proc template to override the style "sansPrinter" for the table, header, data ...&lt;BR /&gt;
I manage the output with a proc report so i have more options to render the header, but maybe there is another way using the proc print.&lt;BR /&gt;
&lt;BR /&gt;
Basically, i want the cell with the content "Wohnsitzgemeinde" to mergeDown 2 cells and the cell "Berufsauspendler" to mergeAcross 6 cells.&lt;BR /&gt;
The cells with contents "zusammen" and "darunter weiblich" should mergeDown 1 cell each and the cell "im Alter von ... bis unter ... Jahren" to mergeAcross 4 cells.&lt;BR /&gt;
Sorry for german content in cells, but actually the content is not important.&lt;BR /&gt;
This is what i'm trying to get, when i look in the xml code.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;ROW&gt;&lt;BR /&gt;
    &lt;CELL mergedown="2" styleid="s50"&gt;&lt;DATA type="String"&gt;Wohnsitzgemeinde&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergeacross="6" styleid="s50"&gt;&lt;DATA type="String"&gt;Berufsauspendler&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
   &lt;ROW&gt;&lt;BR /&gt;
    &lt;CELL index="2" mergedown="1" styleid="s50"&gt;&lt;DATA type="String"&gt;zusammen&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergedown="1" styleid="s50"&gt;&lt;DATA type="String"&gt;darunter
weiblich&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL mergeacross="4" styleid="s50"&gt;&lt;DATA type="String"&gt;im Alter von ... bis unter ... Jahren&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
   &lt;ROW height="25.5"&gt;&lt;BR /&gt;
    &lt;CELL index="4" styleid="s52"&gt;&lt;DATA type="String"&gt;unter
25&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;25 - 35&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;35 - 45&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;45 - 65&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
    &lt;CELL styleid="s52"&gt;&lt;DATA type="String"&gt;65
und mehr&lt;/DATA&gt;&lt;NAMEDCELL&gt;&lt;BR /&gt;
      ss:Name="Print_Titles"/&amp;gt;&lt;/NAMEDCELL&gt;&lt;BR /&gt;
   &lt;/CELL&gt;&lt;BR /&gt;
&lt;BR /&gt;
And this is what i get :&lt;BR /&gt;
&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="1"&gt;&lt;DATA type="String"&gt;&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="6" index="2"&gt;&lt;DATA type="String"&gt;Berufsauspendler&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="2" index="1"&gt;&lt;DATA type="String"&gt;&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" mergeacross="4" index="4"&gt;&lt;DATA type="String"&gt;im Alter von ... bis unter ... Jahren&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;ROW autofitheight="1"&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="1"&gt;&lt;DATA type="String"&gt;Wohnsitzgemeinde&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="2"&gt;&lt;DATA type="String"&gt;zusammen&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="3"&gt;&lt;DATA type="String"&gt;darunter
weiblich&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="4"&gt;&lt;DATA type="String"&gt;unter
25&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="5"&gt;&lt;DATA type="String"&gt;25 - 35&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="6"&gt;&lt;DATA type="String"&gt;35 - 45&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="7"&gt;&lt;DATA type="String"&gt;45 - 65&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;CELL styleid="header" index="8"&gt;&lt;DATA type="String"&gt;65
und mehr&lt;/DATA&gt;&lt;/CELL&gt;&lt;BR /&gt;
&lt;/ROW&gt;&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
How can i use the tagattr mergeDown and mergeAcross to receive the first table header?&lt;BR /&gt;
&lt;BR /&gt;
Here my code:&lt;BR /&gt;
&lt;BR /&gt;
proc template;&lt;BR /&gt;
	define style styles.XLsansPrinter;&lt;BR /&gt;
		parent=styles.sansPrinter;&lt;BR /&gt;
&lt;BR /&gt;
style table from output /&lt;BR /&gt;
	color=black                &lt;BR /&gt;
	background=white	&lt;BR /&gt;
	borderrightwidth=0.75pt &lt;BR /&gt;
                   borderleftwidth=0.75pt&lt;BR /&gt;
	bordertopwidth=0.75pt&lt;BR /&gt;
 	borderbottomwidth=0.75pt&lt;BR /&gt;
	cellspacing=0pt&lt;BR /&gt;
	cellpadding=3pt;&lt;BR /&gt;
&lt;BR /&gt;
style body from body / &lt;BR /&gt;
	margintop=.5in &lt;BR /&gt;
	marginbottom=.5in&lt;BR /&gt;
	marginleft=.25in&lt;BR /&gt;
	marginright=.25in;&lt;BR /&gt;
&lt;BR /&gt;
style cell from container /&lt;BR /&gt;
	borderrightwidth=0pt &lt;BR /&gt;
                	borderleftwidth=0pt&lt;BR /&gt;
	bordertopwidth=0pt&lt;BR /&gt;
 	borderbottomwidth=0pt;&lt;BR /&gt;
&lt;BR /&gt;
style header from header /&lt;BR /&gt;
	backgroundcolor=white&lt;BR /&gt;
	fontsize=10pt&lt;BR /&gt;
	textalign=center&lt;BR /&gt;
	verticalalign=middle;&lt;BR /&gt;
&lt;BR /&gt;
style header_tab2 from header /&lt;BR /&gt;
	&lt;B&gt;tagattr='mergeDown:2'&lt;/B&gt;;&lt;BR /&gt;
&lt;BR /&gt;
style data_all from data /&lt;BR /&gt;
	background=white&lt;BR /&gt;
	font_size=10pt&lt;BR /&gt;
	just=right;&lt;BR /&gt;
&lt;BR /&gt;
style data_ags from data_all /&lt;BR /&gt;
	just=center&lt;BR /&gt;
	tagattr='format:Text';&lt;BR /&gt;
&lt;BR /&gt;
end;&lt;BR /&gt;
run; quit;&lt;BR /&gt;
&lt;BR /&gt;
ods listing close;&lt;BR /&gt;
	ods tagsets.excelxp file="&amp;amp;g_ProjektVerzeichnis\ausgabe\tab2a.xml"&lt;BR /&gt;
		style=XLsansPrinter &lt;BR /&gt;
		options(embedded_titles='yes'&lt;BR /&gt;
				suppress_bylines='yes'&lt;BR /&gt;
				sheet_interval='none' &lt;BR /&gt;
				sheet_name="Tab2a"&lt;BR /&gt;
				center_horizontal='yes' &lt;BR /&gt;
				center_vertical='yes' &lt;BR /&gt;
				autofit_height='yes'&lt;BR /&gt;
				row_repeat='1-5'&lt;BR /&gt;
				absolut_column_width='10, 10, 10, 10, 12');&lt;BR /&gt;
&lt;BR /&gt;
ods escapechar='^';&lt;BR /&gt;
&lt;BR /&gt;
title1 bold justify=left 'Tab.: 2a. Berufsauspendler nach Geschlecht und Altersgruppen';&lt;BR /&gt;
&lt;BR /&gt;
proc report data = work.tabelle2a nowindows spanrows split='^';&lt;BR /&gt;
		where (substr(Wohnort,1,2)='05');&lt;BR /&gt;
		&lt;BR /&gt;
columns    Wohnort&lt;BR /&gt;
	("Berufsauspendler" (insgesamt weiblich &lt;BR /&gt;
	("im Alter von ... bis unter ... Jahren" u25 u35 u45 u65 ue65)));&lt;BR /&gt;
	&lt;BR /&gt;
define Wohnort / order "Wohnsitzgemeinde" style(header)=&lt;B&gt;header_tab2&lt;/B&gt;&lt;BR /&gt;
				     style(column)=data_ags;&lt;BR /&gt;
define insgesamt / analysis "zusammen"    style(header)=header &lt;BR /&gt;
				    style(column)=data_all;&lt;BR /&gt;
define weiblich / analysis "darunter^weiblich" style(header)=header &lt;BR /&gt;
				       style(column)=data_all;&lt;BR /&gt;
define u25 / analysis "unter^25" 	style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u35 / analysis "25 - 35" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u45 / analysis "35 - 45" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define u65 / analysis "45 - 65" 		style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
define ue65 / analysis "65^und mehr" 	style(header)=header &lt;BR /&gt;
				style(column)=data_all;&lt;BR /&gt;
  &lt;BR /&gt;
run;&lt;BR /&gt;
quit;&lt;BR /&gt;
&lt;BR /&gt;
ods tagsets.excelxp close;&lt;BR /&gt;
ods listing;&lt;BR /&gt;
&lt;BR /&gt;
I hope you could understand my problem.&lt;/CELL&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/ROW&gt;&lt;/CELL&gt;&lt;/CELL&gt;&lt;/ROW&gt;&lt;/CELL&gt;&lt;/ROW&gt;</description>
      <pubDate>Mon, 09 May 2011 12:16:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63566#M7459</guid>
      <dc:creator>Domenico</dc:creator>
      <dc:date>2011-05-09T12:16:59Z</dc:date>
    </item>
    <item>
      <title>Re: Tagset.Excelxp rendering Table header</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63567#M7460</link>
      <description>Hi:&lt;BR /&gt;
  I have only ever used TAGATTR for FORMATS and FORMULAS. I have never used TAGATTR to perform a MERGEDOWN and I am not sure that what you want to do is possible. The ss:Mergedown is a style property instruction that Microsoft Excel knows how to interpret and render. I understand what you're trying to do in the style template, but what you are attempting may not work.&lt;BR /&gt;
&lt;BR /&gt;
  I'd recommend opening a track with Tech Support, they can tell you whether what you want to do is actually possible a style template method.&lt;BR /&gt;
&lt;BR /&gt;
cynthia</description>
      <pubDate>Mon, 09 May 2011 16:50:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63567#M7460</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2011-05-09T16:50:35Z</dc:date>
    </item>
    <item>
      <title>Re: Tagset.Excelxp rendering Table header</title>
      <link>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63568#M7461</link>
      <description>Hi Cynthia,&lt;BR /&gt;
&lt;BR /&gt;
I was actually afraid to get this kind of answer. For the past 3 days i googled for the TAGATTR MERGEDOWN, but couln't find any papers, where it was explained how to use it.&lt;BR /&gt;
Since i have to render quite a lot of table header for excel output and i often fail to merge cells, i will follow your suggestion and i will contact the Tech Support.&lt;BR /&gt;
Thank you very much for your effort and for your quick reply&lt;BR /&gt;
&lt;BR /&gt;
Domenico</description>
      <pubDate>Tue, 10 May 2011 05:23:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/ODS-and-Base-Reporting/Tagset-Excelxp-rendering-Table-header/m-p/63568#M7461</guid>
      <dc:creator>Domenico</dc:creator>
      <dc:date>2011-05-10T05:23:04Z</dc:date>
    </item>
  </channel>
</rss>

