A mensagem WM_DROPFILES ocorre quando o usuário arrasta e solta um ícone ou texto de um local para outro em sua aplicação. Para usar a mensagem do Windows , você deve importar a DLL API do Windows para a direita e chamar a função de mensagem em seu código. O Windows permite que qualquer linguagem de programação - incluindo VBA - para executar funções da API , desde que você inclua o arquivo DLL no seu código -fonte. Instruções
1
Abra seu software de programação Visual Basic for Applications eo arquivo VBA que você deseja editar .
2
Incluir o arquivo DLL shell no topo do seu código. Adicione a seguinte instrução para o arquivo :
Private Declare Function DragQueryFile Lib " shell " (ByVal wParam As Integer , ByVal Index As Integer , ByVal lpszFile As Any , ByVal BufferSize As Integer ) As Integer
Você deve copiar e colar a declaração acima exatamente como ele é mostrado, porque cada uma dessas frases e valores de retorno são definidos no arquivo DLL API do Windows.
3
Adicione a função VBA que processa processo de arrastar e soltar do usuário usando a API do Windows . Copie e cole o seguinte código ao seu arquivo :
drop.MsgList (0) = WM_DROPFILESdrop.hWndTarget = Me.hWnddrop.MsgPassage (0) = 1DragAcceptFiles Me.hWnd , Verdadeiro
4
Salve o arquivo e clique no botão "Run" no seu editor de testar o novo código no depurador.