Your strategy is good but what if i need a style that is a combination of a
couple of styles...like color, bold, underline, border, align, background,
fontsize, font type etc. The style required could be a combination of any of
these styles which is not known to me in advance. Should i create a cache of
all possible permutations n combinations of these styles? Wouldnt that end
up exceeding the "Too many styles " limit.

Arshi

-----Original Message-----
From: Avik Sengupta [mailto:[EMAIL PROTECTED]
Sent: Wednesday, July 09, 2003 2:16 PM
To: POI Users List
Subject: RE: creating second hssf sheet


That code obviously wont work.. the style is accessed when serialisation
happens, and by then the style is ALIGN_RIGHT. 

The general strategy is 

HSSFCellStyle right =
wb.createCellStyle();right.setAlignment(HSSFCellStyle.ALIGN_RIGHT);

HSSFCellStyle left =
wb.createCellStyle();left.setAlignment(HSSFCellStyle.ALIGN_GENERAL);

while(i have data){
        ... create cell;
        if (cell should be right) cell.setStyle(right); else
cell.setStyle(left);
}


Caveat: The above is very pseudo code... please check the api. 

As regards your question on clearing after a sheet, afaik, formats are
stored globally in the workbook, not at each sheet. Tho i must say that
the exact semantics of when Excel complains about "Too many styles" is
not fully known.  

On Wed, 2003-07-09 at 11:21, Singh, Arshi (Indsys) wrote:
> Hi,
>   I went through the sample code in FAQ. My requirement is such that i
need
> a no. of fonts n styles. Thats why i was creating a new style n font
> everytime i needed one. But instead if i try to use the same style by
> changing all the values back to normal, then the latest style n font gets
> populated for the previous cells also.
> eg:-
> HSSFCellStyle cell_style = wb.createCellStyle();
> cell_style.setAlignment(HSSFCellStyle.ALIGN_RIGHT);
> sheet_cell.setCellStyle(cell_style);
> 
> cell_style.setAlignment(HSSFCellStyle.ALIGN_GENERAL);
> sheet_cell2.setCellStyle(cell_style);
>       
>       Now its the ALIGN_GENERAL (second style) that gets set for the first
> cell also.
> I believe there is a font table for storing all the workbook fonts. Is
there
> a way to delete fonts from this, after one sheet is made...so that space
for
> more fonts can be made available.
> 
> Thanks,
> Arshi.
> -----Original Message-----
> From: Michael Zalewski [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, July 09, 2003 9:30 AM
> To: POI Users List
> Subject: RE: creating second hssf sheet
> 
> 
> It probably doesn't help much, cuz the real URL is
> 
> http://jakarta.apache.org/poi/faq.html#faq-N100C2
> 
> And the short answer is that you have to limit the number of HSSFStyle
> objects that you create. If you create a new one for each cell, you make
too
> many for Excel to handle. The FAQ contains good sample code.
> 
> -----Original Message-----
> From: Avik Sengupta [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, July 08, 2003 11:32 AM
> To: POI Users List
> Subject: Re: creating second hssf sheet
> 
> Does this help?
> http://jakarta.apache.org/poi/faq#faq-N100C2
> 
> 
> On Tue, 2003-07-08 at 18:46, Singh, Arshi (Indsys) wrote:
> > Hi,
> >    I have created a new workbook using POI hssf and made one excel sheet
> > containing a number of fonts, styles etc. After that when i try to
create
> a
> > second sheet , it gives problems.
> >       If i try to create a small sheet 2 with a few lines of different
> > fonts then the fonts do not show as desired in sheet 2 and if i try to
> > create a big sheet 2 having tables and orientations then the my output
> excel
> > file does not even open up and shows the error "Too Many Different Cell
> > Formats".
> >       Can somebody please help me detect the error. Could it be because
of
> > some buffer in memory ????
> > Thanks,
> > Arshi.
> >
> 
> [useless trailers snipped]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> "THIS E-MAIL MESSAGE ALONG WITH ANY ATTACHMENTS IS INTENDED ONLY FOR THE
> ADDRESSEE and may contain confidential and privileged information.
> If the reader of this message is not the intended recipient,
> you are notified that any dissemination, distribution or copy of this 
> communication is strictly Prohibited. 
> If you have received this message by error, please notify us 
> immediately, return the original mail to the sender and delete the 
> message from your system."
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
-- 
Avik Sengupta <[EMAIL PROTECTED]>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


"THIS E-MAIL MESSAGE ALONG WITH ANY ATTACHMENTS IS INTENDED ONLY FOR THE
ADDRESSEE and may contain confidential and privileged information.
If the reader of this message is not the intended recipient,
you are notified that any dissemination, distribution or copy of this 
communication is strictly Prohibited. 
If you have received this message by error, please notify us 
immediately, return the original mail to the sender and delete the 
message from your system."


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to