Forum Pplware

Versão Completa: Criar macro para Inserir/apagar linhas após a ultima linha digitada
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
Boa tarde,

Estou com dificuldades na criação de uma macro em Excel que me permita adicionar e eliminar linhas, numa determinada tabela. Aquilo que pretendia era que após a ultima linha preenchida, ao clicar no botão "Insert", o Excel automaticamente inseri-se uma linha abaixo com as formatações da linha anterior, mas vazia, para que pudesse inserir novos dados. Da mesma forma queria inserir um botão para eliminar.

Penso que isto é possivel atraves da macro de contar linhas, mas tou dificuldades em criar, alguem consegue ajudar?

Obrigado

Daniel.Gomes
Olá Smile

Podes gravar uma macro para fazer isso.
No separador "Programador" clicas em "Gravar Macro", na janela que aparece escreves o nome da macro, por exemplo, "Inserir Linha", podes colocar uma tecla de atalho, por exemplo "I" (fica ctrl+shift+I), por fim clicas em "OK". De seguida seleccionas a última linha da tua tabela (clicando no número da mesma) botão direito do rato e no menu de contexto clicas em "Inserir", voltas ao separador "Programador" e clicas em "Terminar Gravação".
Agora seleccionas a última linha da tua tabela e fazes ctrl+shif+I ou vais ao separador "Programador", "Macros", seleccionas a macro e clicas em executar.

Para o eliminar a linha segues o procedimento descrito em cima mas na vez de gravares os passos de inserir uma linha gravas os passos de eliminar uma.

Podes também criar dois botões de formulário e atribuir a respectiva macro a esses botões.

Ou ainda criar dois botões ActiveX e,

Código botão Inserir

Código:
ActiveCell.EntireRow.Insert

Nota:
1 - Basta clicares no botão com a célula da última linha seleccionada;
2 - Tens de "guardar" sempre uma linha vazia para fazeres a inserção, porque o Excel insere a linha antes da célula que tens seleccionada.

Código botão Eliminar

Código:
ActiveCell.EntireRow.Delete

Nota:
1 - Basta clicares no botão com a célula da linha que queres eliminar seleccionada.
nioxys, obrigado pela ajuda. No entanto nao estou a conseguir montar isso na minha folha de Excel. ele efetivamente cria a linha, mas nao me esta a copiar os duas formulas que tenho em duas células. Para alem disso está a copiar-me a meio da tabela e não na ultima linha como pretendido.

Nao sei se com tanto problema consegues ajudar .

coloquei o ficheiro em anexo.

Basicamente o que pretendia é que sempre que clica-se nos botões que criei no ficheiro, ele inseri-se ou elimina-se as linhas

.[attachment=150]
Obrigado

RolleyesRolleyesRolleyes
Vê se é isto que queres.

Download

Para inserires uma linha basta clicar no botão "Inserir Linha".
Para eliminar uma linha seleccionas uma célula da linha que queres eliminar e clicas no botão "Eliminar Linha".
Sem dúvida.. Smile..

Obrigado..

Mas como posso ver os codigos?

Precisava de inserir esta mesma macro mas em outro livro do Excel Smile

Daniel.Gomes

Obrigado :
De nada. Smile

No separador "Programador" clicas em "Modo de Estrutura" e depois clicas no botão do qual queres ver código e de seguida no mesmo separador em "Ver Código".
Boa noite! Estou com mesmo problema, preciso de uma mãozinha! Tenho uma tabela, onde possui duas linhas com formatações, cálculos e também botões que alteram os valores da célula, e queria colocar um botão para adicionar e remover uma linha, porém quando adicionar uma linha, adicionar todo conteúdo também, inclusive os botões aplicando sua função na sua linha, o problema é que quando colo uma linha embaixo com os botões junto, quando eu vou clicar nesse botão da linha que colei ele altera os valores da linha de cima entende, anexei o arquivo abaixo para compreender melhor, veja se consegue me dar uma luz aí!

Download Tabela
URL's de Referência