Como inserir uma linha entre duas linhas Excel - Apache POI

Tenho um modelo de formulário feito em excel. Faço o upload desse arquivo consulto o banco e preciso inserir linhas de acordo com o ResultSet.
Só que usando sheet.createRow(); ele não inseri uma linha e sim cria se o formulário não tiver.
O que eu quero fazer é:
[formulário]
linha 10: 'começo’
linha 11: ‘linha 11’

ResultSet com x resultados
[formulário novo]
linha 10 : 'começo’
linha :x linhas novas
linha 11+x: ‘linha 11’

Alguém já fez isso?

Não sei se é o melhor caminho mais já pensou em copiar as linhas de baixo adicionar as linhas que vc precisa adicionar e depois colocar as linhas copiadas após as linhas que vc teve que adicionar.

( é uma solução mais talvez não seja a solução certa )

[quote=kritiuns]Não sei se é o melhor caminho mais já pensou em copiar as linhas de baixo adicionar as linhas que vc precisa adicionar e depois colocar as linhas copiadas após as linhas que vc teve que adicionar.

( é uma solução mais talvez não seja a solução certa )[/quote]

Já pensei nisso só que fica um absurdo o código, tem que haver um jeito mais correto. rs

:shock: Ninguém se habilita?
Já li a API e não encontrei nenhum método ‘insertrow()’…

Olá nandoarashida,

Vou te passar um exemplo acho que pode te ajudar:

final Row row = this.sheet.createRow( 10 ); // Linha na qual você queira criar

Para você escrever na linha deve-se criar a celula :

Qualquer dúvida e só falar.

[quote=cloude]Olá nandoarashida,

Vou te passar um exemplo acho que pode te ajudar:

final Row row = this.sheet.createRow( 10 ); // Linha na qual você queira criar

Para você escrever na linha deve-se criar a celula :

Qualquer dúvida e só falar.[/quote]

opa cloude,

usando o createRow (); ele realmente ‘cria’ a linha e se tiver não faz ‘nada’, se tiver dados do jeito que expliquei acima ele irá sobrepor a informação.

Faça assim,

Falou…

[quote=cloude]Faça assim,

Falou…[/quote]

Opa Cloude,

eu já havia usado esse método e o que acontece é ter minha ‘linha 11’ sobreposta com a nova informação.

Consegui achar um método estou ainda testando.

Já percebi que os gráficos, formulas(ex. Soma), não mudam com as criações das linhas.


void shiftRows(int startRow, int endRow, int n)
Shifts rows between startRow and endRow n number of rows.

void shiftRows(int startRow, int endRow, int n, boolean copyRowHeight, boolean resetOriginalRowHeight)
Shifts rows between startRow and endRow n number of rows.

void shiftRows(int startRow, int endRow, int n, boolean copyRowHeight, boolean resetOriginalRowHeight, boolean moveComments)
Shifts rows between startRow and endRow n number of rows.