<?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: Import a xlsx file with years in the 8th row in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408401#M99691</link>
    <description>&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;Use the VALIDVARNAME and VALIDMEMNAME options to support non-SAS names:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options validvarname=any validmemname=extend;

%let PATH=path-to-your-file;

proc import out=work.mydataset
  datafile="&amp;amp;PATH\Sample.xlsx"
  dbms=xlsx
  replace;
  range='Sheet1$c8:y100';
  getnames=yes;
run; quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;Vince DelGobbo&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;SAS R&amp;amp;D&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sun, 29 Oct 2017 19:35:13 GMT</pubDate>
    <dc:creator>Vince_SAS</dc:creator>
    <dc:date>2017-10-29T19:35:13Z</dc:date>
    <item>
      <title>Import a xlsx file with years in the 8th row</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408216#M99587</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to import a xlsx data into SAS. The file has data for different industries and different years, and useful data begins in the 8th row. The below is an example.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Line&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1948&lt;/TD&gt;&lt;TD&gt;1949&lt;/TD&gt;&lt;TD&gt;1950&lt;/TD&gt;&lt;TD&gt;1951&lt;/TD&gt;&lt;TD&gt;1952&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Compensation of employees&lt;/TD&gt;&lt;TD&gt;A033RC0&lt;/TD&gt;&lt;TD&gt;144,470&lt;/TD&gt;&lt;TD&gt;144,512&lt;/TD&gt;&lt;TD&gt;158,465&lt;/TD&gt;&lt;TD&gt;185,927&lt;/TD&gt;&lt;TD&gt;201,341&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;Domestic industries&lt;/TD&gt;&lt;TD&gt;A4002C0&lt;/TD&gt;&lt;TD&gt;144,384&lt;/TD&gt;&lt;TD&gt;144,454&lt;/TD&gt;&lt;TD&gt;158,387&lt;/TD&gt;&lt;TD&gt;185,913&lt;/TD&gt;&lt;TD&gt;201,339&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp; Private industries&lt;/TD&gt;&lt;TD&gt;A4003C0&lt;/TD&gt;&lt;TD&gt;121,529&lt;/TD&gt;&lt;TD&gt;119,169&lt;/TD&gt;&lt;TD&gt;131,318&lt;/TD&gt;&lt;TD&gt;150,726&lt;/TD&gt;&lt;TD&gt;161,201&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Agriculture, forestry, and fishing&lt;/TD&gt;&lt;TD&gt;A4004BC0&lt;/TD&gt;&lt;TD&gt;3,318&lt;/TD&gt;&lt;TD&gt;3,142&lt;/TD&gt;&lt;TD&gt;3,183&lt;/TD&gt;&lt;TD&gt;3,339&lt;/TD&gt;&lt;TD&gt;3,313&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Farms&lt;/TD&gt;&lt;TD&gt;B4005BC0&lt;/TD&gt;&lt;TD&gt;3,000&lt;/TD&gt;&lt;TD&gt;2,817&lt;/TD&gt;&lt;TD&gt;2,821&lt;/TD&gt;&lt;TD&gt;2,932&lt;/TD&gt;&lt;TD&gt;2,868&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Agricultural services, forestry, and fishing&lt;/TD&gt;&lt;TD&gt;J4006C0&lt;/TD&gt;&lt;TD&gt;319&lt;/TD&gt;&lt;TD&gt;326&lt;/TD&gt;&lt;TD&gt;363&lt;/TD&gt;&lt;TD&gt;408&lt;/TD&gt;&lt;TD&gt;446&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mining&lt;/TD&gt;&lt;TD&gt;A4007BC0&lt;/TD&gt;&lt;TD&gt;3,596&lt;/TD&gt;&lt;TD&gt;3,181&lt;/TD&gt;&lt;TD&gt;3,502&lt;/TD&gt;&lt;TD&gt;3,987&lt;/TD&gt;&lt;TD&gt;4,056&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I try to import it with code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc import out = mydataset&lt;BR /&gt;datafile = "&amp;amp;path\Section6All_Hist"&lt;BR /&gt;dbms = xlsx replace;&lt;BR /&gt;range = 'C8:X92';&lt;BR /&gt;getnames=yes;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SAS reports:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;NOTE: Variable Name Change. 1948 -&amp;gt; _1948&lt;/P&gt;&lt;P&gt;NOTE: Variable Name Change. 1949 -&amp;gt; _1949&lt;BR /&gt;NOTE: Variable Name Change. 1950 -&amp;gt; _1950&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Moreover, I find it hard to transpose the dataset into normal shape, i.e., years on the first column and industry names as variable names. I attached a sample of the xlsx file.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 28 Oct 2017 05:03:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408216#M99587</guid>
      <dc:creator>xyxu</dc:creator>
      <dc:date>2017-10-28T05:03:21Z</dc:date>
    </item>
    <item>
      <title>Re: Import a xlsx file with years in the 8th row</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408217#M99588</link>
      <description>&lt;P&gt;1948 is not a valid SAS variable name, thats why it is given a "_" prefix. The commands to get a transposed version should look like:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc transpose data=myDataset out=myNormalShape  name=yearStr;
id industry;
var _: ;
run;

data myNormalShapeDataset;
set myNormalShape;
year = input(substr(yearStr,2), best.);
drop yearStr;
run; &lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sat, 28 Oct 2017 05:19:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408217#M99588</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2017-10-28T05:19:04Z</dc:date>
    </item>
    <item>
      <title>Re: Import a xlsx file with years in the 8th row</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408226#M99590</link>
      <description>&lt;P&gt;Depending on what you want to do with the data after transposing, i would almost always keep the in the industry names as values. This makes group-processing easier.&lt;/P&gt;</description>
      <pubDate>Sat, 28 Oct 2017 09:51:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408226#M99590</guid>
      <dc:creator>andreas_lds</dc:creator>
      <dc:date>2017-10-28T09:51:09Z</dc:date>
    </item>
    <item>
      <title>Re: Import a xlsx file with years in the 8th row</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408401#M99691</link>
      <description>&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;Use the VALIDVARNAME and VALIDMEMNAME options to support non-SAS names:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options validvarname=any validmemname=extend;

%let PATH=path-to-your-file;

proc import out=work.mydataset
  datafile="&amp;amp;PATH\Sample.xlsx"
  dbms=xlsx
  replace;
  range='Sheet1$c8:y100';
  getnames=yes;
run; quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;Vince DelGobbo&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="verdana,geneva"&gt;SAS R&amp;amp;D&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 29 Oct 2017 19:35:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Import-a-xlsx-file-with-years-in-the-8th-row/m-p/408401#M99691</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2017-10-29T19:35:13Z</dc:date>
    </item>
  </channel>
</rss>

