Pois é,
Todos usamos muito a famosa funcionalidade CTRL + C e CTRL + V. Sim o copy/paste é muito útil e porque não dizer, indispensável. Mas como podemos implementar essa funcionalidade dentro das nossas aplicações MS Office?
How to Use the Office Clipboard in VBA
How to Copy From the Clipboard in Excel Using VBA
How to Cut & Paste From the Clipboard in Excel VBA
Em que momento desejarei utilizar essa funcionalidade nas minhas aplicações? Através do VBA, é possível, por exemplo, recuperarmos quaisquer informações que estiverem na Área de Transferência, utilizando-as em nossas aplicações, ou podemos fazer o caminho inverso e disponibilizar o resultado de certo processamento para a área de transferência.
Sub PutInRAM () Dim nOBJ As MSForms.DataObject Set dtOBJ = New MSForms.DataObject Dim n As String
Let n = "Bernardes"
dtOBJ.SetText s
dtOBJ.PutInClipboard End SubSub GetInRam () Dim dtOBJ As MSForms.DataObject Dim n As String Set dtOBJ = New MSForms.DataObject dtOBJ.GetFromClipboard Let n = dtOBJ.GetText MsgBox n End Sub
' Compatibilizando as versões do MS Office#If VBA7 ThenPublic Declare PtrSafe Function OpenClipboard Lib "user32" (ByVal hwnd As LongPtr) As LongPublic Declare PtrSafe Function EmptyClipboard Lib "user32" () As LongPublic Declare PtrSafe Function CloseClipboard Lib "user32" () As Long#ElsePublic Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As LongPublic Declare Function EmptyClipboard Lib "user32" () As LongPublic Declare Function CloseClipboard Lib "user32" () As Long#End IfSub EmptyInRAM()OpenClipboard (0&)EmptyClipboardCloseClipboardEnd Sub
Referência: Ambiente Office
André Luiz Bernardes
A&A® - Work smart, not hard.Skype: inanyplace