[POI] Como configurar campo tipo moeda?

Oi pessoal!

Estou usando o POI pra criar minhas planilhas do excel e está tudo indo muito bem!

Estou só com um probleminha… nao consigo deixar um campo formatado como moeda… já tentei isso esse código, e não deu certo:

styleGeral.setDataFormat(HSSFDataFormat.getBuiltinFormat("[$R$-416]#.##0,00;([$R$-416]#.##0,00;)"));

Como eu faço para o meu campo ficar com essa formatação?

Ei alice.
Eu não sei como fazer, mas uma vez eu vi algo parecido, e parece que você tem que fazer algo parecido com seu código ai mesmo.

Olha no site ai:
http://jakarta.apache.org/poi/

Se vc conseguir avisa como foi.

Abraços.

Oi pessoal!

Consegui!

Faltou um pedacinho de código anteriormente:

HSSFDataFormat format = workbook.createDataFormat(); styleMoeda.setDataFormat(format.getFormat("[$R$-416] #.##0,00;([$R$-416] #.##0,00)"));

Agora tenho uma outra dúvida… como arrumo o tamanho das minhas colunas??? Pq qdo eu abro o arquivo xls q eu acabei de criar, as colunas estão bem estreitas, daí eu dou um duplo clique e elas ficam num tamanho adequado… tem como setar isso no código???

ninguém sabe??? :frowning:

Só para o post não ficar incompleto:


                Sheet s = wb.createSheet();

                //implementa a criação das linhas e das células e depois ajusta o tamanho

                s.setColumnWidth(0, 0x1000);
                s.setColumnWidth(1, 0x2500);
                s.setColumnWidth(2, 0x1200);
                s.setColumnWidth(3, 0x2500);
                s.setColumnWidth(4, 0x1200);
                s.setColumnWidth(5, 0x1000);

Não sei pra vcs, mas pra mim a string de formatação está aparecendo com caracteres estranhos, segue o meu exemplo de formatação em moeda R$ e o set da largura da coluna:

cell = row.createCell(2);
HSSFCellStyle cs = wb.createCellStyle();
HSSFDataFormat df = wb.createDataFormat();
//Valores positivos em black e negativos em red:
String formato = “[BLACK][$R$-416]#,##0.00;[RED]-[$R$-416]#,##0.00”;
cs.setDataFormat(df.getFormat(formato));
//Largura
sheet.setColumnWidth( 2, 5000);