Ir ao conteúdo
  • Cadastre-se

Excel Macro Copiar e Colar com destino variavel


Posts recomendados

Pessoal minha dúvida é a seguinte,

 

Tenho uma planilha de fluxograma de processos, nela uma das abas é um indice com as figuras padrões. Criei uma macro para copiar a figura da planilha indice e colar na planilha P1 onde será feito o fluxograma e nesta mesma pasta poderei ter N planilhas com fluxograma, sendo que o metodo usado para criar uma nova planilha será copiar e colar. Quando faço isso ao utilizar a macro ele copia a figura na planilha P1 mas, gostaria de que ela colasse na planilha atual, na qual eu estaria manipulando o fluxograma no momento. É possível deixar como destino a planilha que está ativa no momento da execução da Macro?

 

 

Segue abaixo o código:

Sub Macro24()
'
' Macro24 Macro
'

'
    Sheets("Índice de simbolos").Select
    ActiveSheet.Shapes.Range(Array("Flowchart: Process 97")).Select
    Selection.Copy
    Sheets("P1").Select
    ActiveSheet.Paste
End Sub

Link para o comentário
Compartilhar em outros sites

Experimente o código abaixo no lugar do anterior.

Sub CopiaColaShape()
 Sheets("Índice de simbolos").Shapes("Flowchart: Process 97").Copy
 ActiveSheet.Paste
End Sub

 

Talvez a alternativa que segue abaixo possa ser útil. Exemplo: se você estiver montando um fluxograma em uma certa planilha e quiser inserir nela uma cópia de uma figura existente na planilha "Índice de simbolos", basta ativar esta última, selecionar a figura e rodar um outro código.

Se você quiser experimentar:

1. cole uma cópia da declaração de variável abaixo no topo de um módulo comum (pode ser no módulo que contém o código que passei antes; a declaração deverá ficar acima do código existente)

Public PlanAnt As String

 

2. cole uma cópia do código abaixo no módulo de "EstaPasta_de_trabalho"

Sub Workbook_SheetDeactivate(ByVal Sh As Object)
 PlanAnt = Sh.Name
End Sub

3. cole uma cópia do código abaixo em um módulo comum (pode ser no mesmo módulo que contém o código que passei antes)

Sub CopiaColaPlanAnt()
 Selection.Copy
 Sheets(PlanAnt).Paste
End Sub

funcionamento - se você estiver montando um fluxograma na planilha ABC, por exemplo, e quiser replicar nela uma figura, então ative a planilha "Índice de simbolos" / selecione a figura / rode o código CopiaColaPlanAnt ~~~> assim a figura selecionada será replicada na planilha ABC; para rodar o código facilmente ou coloque um botão na planilha "Índice de simbolos" ou vincule a um atalho de teclado

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...