quinta-feira, 20 de maio de 2010

Manipulando a área de transferência do Windows (ClipBoard)

Requisito:
Marcar a referência "Microsoft Forms Object Library".
Se tiver um form no VBA, a referência estará automaticamente marcada.

;-)




Dim area As DataObject
Dim texto As String

Sub colar_da_area_de_transferencia()

Dim temp_area As New DataObject
temp_area.GetFromClipboard
MsgBox temp_area.GetText

End Sub

Sub limpa_area_transferencia()

Dim temp_area As New DataObject
temp_area.SetText ""
temp_area.PutInClipboard

End Sub

Sub copiar_para_area_de_transferencia()

Dim temp_area As New DataObject
temp_area.SetText "Texto"
temp_area.PutInClipboard

End Sub


Um comentário:

|||Pacheco||| disse...

!!! BOAAA !!! EXCELENTE !!! BLOG !!!
estou utilizando esta referencia
Microsoft Forms 2.0 Object Library
do arquivo FM20.dll
o arquivo antes funcionava no SEVEN/office2010
agora só funciona no XP/office2002

é o mesmo arquivo mas agora da erro:
Erro tempo execução'-2147221040 (800401d0)'
ObjetodeDados:ObterdaÁreadeTransferencia falha de OpenClipboard

e marca a linha MyData.GetFromClipBoard

Me desculpe mas tem mai suma duvida, se puder colocar o seu parecer fico grato!

quando coloco UNS CONTROLE ACTIVEX nesse word ele fica TODO BUGADO FALA SERIO !
é só comigo q isso acontece ou é normal mesmo !
Cara eu tenho q apagar todos (commandButton, textbox, image...) e refazer ou quando dá apenas RENOMEAR TUDO (detalhe quando dá)

MUITO BUG ! do nada ! PARA DE FUNCIONAR, ele renomeia por conta, dai nem sabe se o é textbox ou image e mistura tudo !
SERIO ! isso ta muito louco !
Já se eu faço no userform não acontece isso ! mas é coloca no Document e pronto ! tem q ficar torcendo pra ele nao "borra" tudo,

dai eu fico com 2 arquivos um certinhu sem BUGs e o outro é o q eu fico fuçando.

Desculpe o texto extenso !
Mas desde já MUITO OBRIGADO !

Pesquisar este blog

Arquivo do blog

Quem sou eu

Minha foto
Administrador de Empresas/Técnico em Processamento de Dados. Microsoft Office User Specialist - Excel Proficient. Pós-graduado em Business Intelligence.