BookmarkSubscribeRSS Feed
Bhavesh1
Calcite | Level 5

Hi Technical Support team,

 

I have an error message in the log, see below;

 

ERROR: Problem determining cell structure. Please contact
       Technical Support and provide the PROC TABULATE
       code that caused this problem.
NOTE: Execution terminating

 

Please see PROC TABULATE:

proc tabulate  data = temp ORDER=FORMATTED FORMAT=comma15.  MISSING  FORMCHAR='82838485868788898A8B8C'x     ;
 var enrols ;
        class instn course_funding_source daydue monthdue december_rec;
                 

table
(all='Total') 
(instn = ' ' ),
december_rec=' ' * (monthdue = ' ' all = 'Total' )
/rts=40 box='RTO' misstext = ' ';

  
table
(all='Total') 
(course_funding_source =' ' all = 'Total'),
december_rec=' ' * (monthdue = ' ' all = 'Total' )
/rts=40 box='Course Funding Source' misstext = ' ';

 

%TAB2HTM (CAPTURE=OFF,
 RUNMODE=B,
 OPENMODE=REPLACE, 
        HTMLFILE = L:\TSAF - SAS\EXTRACTS\2018\missingres_2018all_&EXREPDATE18..html,
 BRTITLE=Missing Results,
 CENTER=N);

 
run;

 

Please help to resolve this the above issue,

 

Regards

Bhavesh

5 REPLIES 5
Astounding
PROC Star

This part looks a little strange:

 

table
(all='Total') 
(course_funding_source =' ' all = 'Total'),

 

To be consistent with the structure of the first table, it should look like this:

 

table
(all='Total') 
(course_funding_source =' '),

 

This is really a guess.  There's no guarantee that this is the problem.  Certainly the error message is highly unusual.  But perhaps SAS has trouble determining whether you want ALL to appear before or after the COURSE_FUNDING_SOURCE.

Bhavesh1
Calcite | Level 5
Still getting the same error message after amending structure if the first table, see print screen below.



[cid:image001.png@01D39B5F.9D6F45B0]




Bhavesh1
Calcite | Level 5

Thank you for the response. After amending the structure of the first table as suggested in the email, still getting the same error message. Please see attachment.

 

 

Astounding
PROC Star

Just one final suggestion then ....

 

Try PROC TABULATE with just one TABLE statement.  See if either one works.

ballardw
Super User

Provide some example data in the form of a data step.

 

I think you have way to many () in the code

table
   all='Total' 
   instn = ' ' ,
   december_rec=' ' * (monthdue = ' ' all = 'Total' )
   /rts=40 box='RTO' misstext = ' '
;

  
table
   all='Total' 
   course_funding_source =' ' ,
   december_rec=' ' * (monthdue = ' ' all = 'Total' )
   /rts=40 box='Course Funding Source' misstext = ' '
;

perhaps

 

 

My next thought would be to remove the %TAB2HTM from the code and see if that works.

 

The TAB2HTM macro was written for SAS version 6 to create html output. Unless you are turning ODS HTML off it is likely that your output is going to html in the first place.

If you have turned off HTML output put consider using it.

RTS= only applies to LISTING output.

 

If you want to control appearance the you change the ODS style.

To send the output to a specific file then use the ODS HTML (or other destination) options.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 5 replies
  • 1772 views
  • 0 likes
  • 3 in conversation