Ir ao conteúdo
  • Cadastre-se

Excel - Como fazer? ........ Com fórmula ou VBA?


PEDRÃO_NET

Posts recomendados

Queria lancar dados na plan1 e queria que os dados fossem levados para a plan2 automaticamente (até aqui eu sei fazer).

Bem, o que eu quero é um recurso Fórmula ou Macro que faça os dados que eu digitei na plan1 continuarem na plan2, mesmo após eu ter deletado os dados da plan1.

Tem como fazer isso?

Link para o comentário
Compartilhar em outros sites

Usa essa macro quando quiser passar os dados para a outra planilha:

Dim Plan As Worksheet

Set Plan = ActiveSheet

Worksheets(1).Select

Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell)).Select

Selection.Copy

Sheets(2).Range("A1").PasteSpecial xlPasteValues

Plan.Select

Link para o comentário
Compartilhar em outros sites

você tem que declarar onde vai ficar o código, Sub seria Procedimento, não é muito esclarecedor, mas seria o seguinte, o Sub é executável e faz uma ação enquanto Function não faz ações, só retorna resultados, claro que existem exceções. Mas você teria que por assim

Sub Macro1()

Dim Plan As Worksheet

Set Plan = ActiveSheet

Worksheets(1).Select

Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell)).Select

Selection.Copy

Sheets(2).Range("A1").PasteSpecial xlPasteValues

Plan.Select

End Sub

No lugar de Macro1 você pode colocar o nome que quiser.

Link para o comentário
Compartilhar em outros sites

ola

bom pessoal estou com uma duvida sobre o excel..

na verdade não sei nem se é possivel, não sou dos melhores no excel...

minha duvida é a seguinte:

vamos imaginar o seguinte,

tenho uma planilha de horas extras, eu gostaria de fazer com que assim que eu digita-se as horas numa celula, o valor ja ser convertido.

por exemplo:

digito 2 numa celula "quantidade de horas".

a quantidade de horas, seria automaticamente convertida para o valor das horas na mesma celula.

vi alguma coisa sobre referencia circular mas não entendi..

alguem poderia me ajudar?

por favor!!

valeu

Link para o comentário
Compartilhar em outros sites

você tem que declarar onde vai ficar o código, Sub seria Procedimento, não é muito esclarecedor, mas seria o seguinte, o Sub é executável e faz uma ação enquanto Function não faz ações, só retorna resultados, claro que existem exceções. Mas você teria que por assim

Sub Macro1()

Dim Plan As Worksheet

Set Plan = ActiveSheet

Worksheets(1).Select

Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell)).Select

Selection.Copy

Sheets(2).Range("A1").PasteSpecial xlPasteValues

Plan.Select

End Sub

No lugar de Macro1 você pode colocar o nome que quiser.

Interessante essa macro!

O único problema dela é que se toda vez que digito algo novo na planilha1 e executo a macro os dados que haviam sidos copiados para a planilha 2 acabam sendo substituidos pelos novos dados recém-digitados.

Eu queria outro efeito: O que eu quero é que toda vez que se digitasse algo na planilha1, fossem sendo acrescentandos aos dados da planilha2.

será que daria pra faze isso?

Link para o comentário
Compartilhar em outros sites

Dá sim, só que você vai ter que vincular a macro a sua planilha onde você vai acrescentando os dados, imaginemos que a planilha que você vai mudar seja a Plan1 e você quer que cole em Plan2, então você coloca o seguinte código em Plan1:

Sub Worksheet_Change(ByVal Target As Range)

Dim Plan As Worksheet

Target.Copy

Sheets("Plan2").Cells(Target.Row, Target.Column).PasteSpecial xlPasteValues

Application.CutCopyMode = False

End Sub

Link para o comentário
Compartilhar em outros sites

Dá sim, só que você vai ter que vincular a macro a sua planilha onde você vai acrescentando os dados, imaginemos que a planilha que você vai mudar seja a Plan1 e você quer que cole em Plan2, então você coloca o seguinte código em Plan1:

Sub Worksheet_Change(ByVal Target As Range)

Dim Plan As Worksheet

Target.Copy

Sheets("Plan2").Cells(Target.Row, Target.Column).PasteSpecial xlPasteValues

Application.CutCopyMode = False

End Sub

Opa cara. Obrigado!!!

Deu quase certo desta vez.

Será que eu fiz algo de errado?

Por favor me diga onde eu errei ( veja anexo abaixo ).

O anexo abaixo tá funcionando assim:

Toda vez que eu digito algo na plan1 e saio da célula os conteúdo dela é colado em plan2... Até aqui tudo bem.

O problema é o seguinte:

- toda vez que eu digito algo novo em plan1 os conteúdos da plan2 também são apagados.

- toda vez que eu digito algo em cima dos dados contidos em plan1 os conteúdos de plan2 também são substituidos.

O que eu queria é o seguinte:

- Quando eu apagasse algo em plan1, os dados contidos em plan2 continuasse lá

- Toda vez que eu digitasse algo em cima dos existentes em plan1, estes dados recém-digitados fossem acrescentados aos da plan2... E não queria que apagasse nada lá da plan2.

Deu pra entender? .... Tudos que eu digitasse em plan1, queria somar estes dados aos conteúdos já existentes em plan2

Será que a macro que você me passou faz isso? ... Onde eu errei nela?

Veja link do arquivo da macro:

http://www.4shared.com/file/53517876/70b9747c/Macro_colar.html

Link para o comentário
Compartilhar em outros sites

Desculpa, é que eu não tinha entendido o que você queria, substitua por esse código:

Sub Worksheet_Change(ByVal Target As Range)

Target.Copy

Sheets("Plan2").Cells(1, Target.Column).End(xlDown).Cells(2, 1).PasteSpecial xlPasteValues

Application.CutCopyMode = False

End Sub

Link para o comentário
Compartilhar em outros sites

Desculpa, é que eu não tinha entendido o que você queria, substitua por esse código:

Sub Worksheet_Change(ByVal Target As Range)

Target.Copy

Sheets("Plan2").Cells(1, Target.Column).End(xlDown).Cells(2, 1).PasteSpecial xlPasteValues

Application.CutCopyMode = False

End Sub

Opa cara valeu!

Seguinte:

Coloquei o código em plan1 e quando eu digito alguma coisa numa célula da planilha1 do excel aparece o erro da figura abaixo.

O que eu digito na planilha1 não é copiado na planilha2.

O que pode ser?

FIGURA

erromacrolo3.png

Link para o comentário
Compartilhar em outros sites

Valeu cara!

Seguinte: Já fiz as altereções e ainda assim está dando o mesmo erro.....

Vou fazer o seguinte vou colocar a planilha aqui para que você ou um outro entendido faça as alterações necessárias ok?

Quando corrigir o problema, por favor me diga onde eu estava errando, ok?

Link da planilha:

http://www.4shared.com/file/53963755/9a5a8b45/Cadastro.html

EDIT:

--------------------------------------

Viche cara!... Acho que foi Falha minha desta vez!!!

Na o último código ( após algumas tentativas ), funcionou. Estava acontecendo o erro porque eu havia deixado um espaço onde não devia. Acho que por isso o erro estava ocorrendo.

Cara, Sou Muito Grato por tudo. Muito obrigado por continuar respondendo às minha dúvidas aqui.

Se algum dia precisar, é só falar.

Um um forte abraço!!!

---------------------------------------

_____

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois...
Valeu cara!

Seguinte: Já fiz as altereções e ainda assim está dando o mesmo erro.....

Vou fazer o seguinte vou colocar a planilha aqui para que você ou um outro entendido faça as alterações necessárias ok?

Quando corrigir o problema, por favor me diga onde eu estava errando, ok?

Link da planilha:

http://www.4shared.com/file/53963755/9a5a8b45/Cadastro.html

EDIT:

--------------------------------------

Viche cara!... Acho que foi Falha minha desta vez!!!

Na o último código ( após algumas tentativas ), funcionou. Estava acontecendo o erro porque eu havia deixado um espaço onde não devia. Acho que por isso o erro estava ocorrendo.

Cara, Sou Muito Grato por tudo. Muito obrigado por continuar respondendo às minha dúvidas aqui.

Se algum dia precisar, é só falar.

Um um forte abraço!!!

---------------------------------------

_____

Olá,

cara desculpe pertubar mas preciso tb dessa solução e pra mim da mesmo erro vi q você conseguiu,tem como você me mandar exemplo ???

meu email é [email protected]

muito grato pela ajuda!

[]´sssss

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!