Notifications
Clear all

Colocar planilha ativa na área de tranferência

9 Posts
4 Usuários
0 Reactions
2,422 Visualizações
 jcfp
(@jcfp)
Posts: 0
New Member
Topic starter
 

Bom dia pessoal,

Alguém pode me ajudar com esta dúvida? Acredito que a solução não seja tão complicada.

Preciso manter a minha planilha inteira na área de transferência (clipboard) com uma macro, para que o usuário simplesmente pressione "Ctrl+V" no local desejado e ela cole uma cópia.

Já procurei em diversos locais e não encontrei nada à respeito.

 
Postado : 19/11/2017 5:50 am
(@wzxnet7)
Posts: 0
New Member
 

Bom dia.
Se for a planilha ativa da pasta de trabalho acredito que o seguinte seja suficiente:

Sub copiar()

ActiveSheet.UsedRange.Copy

End Sub
 
Postado : 19/11/2017 6:57 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

jcfp,

Bom dia!

Nesse momento não tenho nem como te enviar um exemplo, entretanto, isso é bem simples de fazer. Você deve gravar uma macro da seguinte forma:

1 - Acione o gravador de macros
2- Selecione toda a planilha que quer copiar
3 - Pressione CTRL + C
4 - Encerre o gravador de macros

Agora, é só abrir o editor do VBA, procurar o módulo que foi gravado, selecionar todo o código que estiver entre o Sub Macro1 e End Sub, copiar o código, dar um duplo clique no objeto Estapastadetrabalho, selecionar o evento Workbook_Open, colar o código copiado lá dentro, salvar tudo e fechar.

Pronto, agora sempre que o usuário abrir seu arquivo, ele irá fazer a mesma coisa que você fez ao gravar a macro. Isso fará com que o que foi gravado esteja agora no clipboard e basta então o usuário selecionar aonde quer colocar os dados e pressionar CTRL + V.

 
Postado : 19/11/2017 7:08 am
 jcfp
(@jcfp)
Posts: 0
New Member
Topic starter
 

Agradeço pela ajuda pessoal.

Mas não é isso exatamente o que eu preciso.

Na verdade o que eu gostaria de colocar na área de transferência é o arquivo inteiro, ou seja a "Planilha.xlsx".

Tem como fazer isso?

 
Postado : 19/11/2017 7:15 am
(@wzxnet7)
Posts: 0
New Member
 

Vamos ver se entendi.
Vc quer salvar uma cópia da pasta de trabalho aberta em um diretório qualquer (meus documentos por exemplo) mas não quer usar o recurso "salvar como" pois quer continuar com a pasta de trabalho principal aberta.
É isso?

 
Postado : 19/11/2017 7:36 am
 jcfp
(@jcfp)
Posts: 0
New Member
Topic starter
 

Isso mesmo.

Por exemplo, aqui utilizamos o WhatsApp no computador; e com a planilha copiada, basta pressionar Ctrl+V na conversa desejada e enviar a planilha rapidamente para a pessoa. Isso evitaria o trabalho de "Salvar como..." ou de ir até a pasta de origem e pressionar Ctrl+C.

 
Postado : 19/11/2017 8:42 am
(@wzxnet7)
Posts: 0
New Member
 

Desse jeito eu nunca vi.
Vamos esperar para ver se alguém tem alguma dica..

 
Postado : 19/11/2017 9:22 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Veja:
'http://www.cpearson.com/Excel/Clipboard.aspx
'https://www.slipstick.com/developer/code-samples/paste-clipboard-contents-vba/

Obs: Passe os valores(das guias copiadas), como uma string.

Att

 
Postado : 20/11/2017 5:45 am
 jcfp
(@jcfp)
Posts: 0
New Member
Topic starter
 

Pensei que fosse mais fácil galera, pois no comando ".Attachments.Add ActiveWorkbook.FullName" quando configura um email em vba, automaticamente ele faz uma cópia do arquivo e anexa. Seria mais ou menos isso, em vez de colocar no email era para deixar na área de transferência.

 
Postado : 16/12/2017 8:19 am