COMO PEGAR UMA SELE?ÃO DE TEXTO NO GETSCREEN

IGORSIMOES13 01/12/2014 17:01:36
#442890
Olá!

Estou escrevendo um script usando os comando [Ô]sendkeys[Ô] enviando para dentro de um programa especifico os comandos e textos. Minha dificuldade e que tenho que pegar algumas informações da tela, que teria que teoricamente fazer uma seleção e usar SendKeys [Ô]{^c}[Ô] para trazer o valor do texto para uma variável(area de transferência do windows) usando o [Ô]Clipboard.GetText[Ô]. Porem Na hora que chega o comando SendKeys [Ô]{^c}[Ô] ele da o erro numero , chamada de procedimento invalida. Ficarei muito grato se me ajudarem a copiar o texto da seleção.

Function fcnLancarValidar(IntValor_X As Integer, IntValor_Y As Integer, IntFimValor_X As Integer, LancarTexto As String)
[ô]On Error GoTo tratar_Err

Dim StrTextoSaida
Dim StrTextoEntrada, strTemp

StrTextoEntrada = LancarTexto
Do Until StrTextoEntrada = Pegar_dados
[ô]seleciona e apaga o texto
SetCursorPos IntValor_X, IntValor_Y
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
[ô]arrasta até o ponto fim da seleção
SetCursorPos IntFimValor_X, IntValor_Y
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
SendKeys [Ô]{BACKSPACE}[Ô]
[ô]insere o texto vazio
esperar (1)

SetCursorPos IntValor_X, IntValor_Y
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
SendKeys LancarTexto
esperar (1)
[ô]inicia a seleção
SetCursorPos IntValor_X, IntValor_Y
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
[ô]arrasta até o ponto fim da seleção
SetCursorPos IntFimValor_X, IntValor_Y
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
SendKeys [Ô]{^c}[Ô]
Loop

Exit Function

tratar_Err:

If Err.Number <> 0 Then
Err.Clear
On Error Resume Next
[ô]MsgBox [Ô]Erro ao copiar![Ô]
End If

End Function

Function Pegar_dados() As String
On Error GoTo sair
Dim dtobj As MSForms.DataObject

Set dtobj = New MSForms.DataObject
dtobj.GetFromClipboard
Pegar_dados = dtobj.getText

Exit Function
sair:
Pegar_dados = [Ô][Ô]
End Function
Faça seu login para responder