ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Inter-program communication using SendKeys (https://www.excelbanter.com/excel-programming/312473-inter-program-communication-using-sendkeys.html)

Tim Coddington

Inter-program communication using SendKeys
 
Trying to figure out how to manipulate an instance of explorer from VBA.
Tried the following, but get a

"Run-time error '5':
Invalid proceedure call or argument"

on the AppActivate line.


Sub TryIt()
Dim ieAlphaTrade, ieAmeritrade As Double

ieAlphaTrade = Shell("C:\Program Files\Internet Explorer\iexplore.exe",
vbNormalFocus)
AppActivate ieAlphaTrade, True
End Sub

Tried a DoEvents before the AppActivate, and that seemed to help a little,
but the error came back.

Any hints?

Thanks in advance,
-Tim



jaf

Inter-program communication using SendKeys
 
Hi Tim,
IE takes time to open and load the page. Shell just dumps to the command prompt so you need to find a way to wait for IE fully open before sending sendkey commands.

A better method is to control IE from within your VBA code.
There is some info here that should get you started.
http://www.google.com/groups?hl=en&l...6btnG%3DSearch


--

John
johnf202 at hotmail dot com


"Tim Coddington" wrote in message ...
Trying to figure out how to manipulate an instance of explorer from VBA.
Tried the following, but get a

"Run-time error '5':
Invalid proceedure call or argument"

on the AppActivate line.


Sub TryIt()
Dim ieAlphaTrade, ieAmeritrade As Double

ieAlphaTrade = Shell("C:\Program Files\Internet Explorer\iexplore.exe",
vbNormalFocus)
AppActivate ieAlphaTrade, True
End Sub

Tried a DoEvents before the AppActivate, and that seemed to help a little,
but the error came back.

Any hints?

Thanks in advance,
-Tim



kkknie[_213_]

Inter-program communication using SendKeys
 

In case you still want to use the sendkeys functions (I agree tha
controlling IE from excell is better), here's how I avoided the error:

Sub TryIt()
Dim ieAlphaTrade, ieAmeritrade As Double

ieAlphaTrade = Shell("C:\Program Files\Internet Explorer\iexplore.exe"
vbNormalFocus)
On Error Resume Next
Do
Err.Clear
AppActivate ieAlphaTrade, True
Loop Until Err.Number = 0
End Sub



--
kkkni
-----------------------------------------------------------------------
kkknie's Profile: http://www.excelforum.com/member.php...nfo&userid=754
View this thread: http://www.excelforum.com/showthread.php?threadid=26634


Tim Coddington

Inter-program communication using SendKeys
 
You guys are GREAT. Thanks! This will get me started.
"kkknie" wrote in message
...

In case you still want to use the sendkeys functions (I agree that
controlling IE from excell is better), here's how I avoided the error:

Sub TryIt()
Dim ieAlphaTrade, ieAmeritrade As Double

ieAlphaTrade = Shell("C:\Program Files\Internet Explorer\iexplore.exe",
vbNormalFocus)
On Error Resume Next
Do
Err.Clear
AppActivate ieAlphaTrade, True
Loop Until Err.Number = 0
End Sub

K


--
kkknie
------------------------------------------------------------------------
kkknie's Profile:

http://www.excelforum.com/member.php...fo&userid=7543
View this thread: http://www.excelforum.com/showthread...hreadid=266344





All times are GMT +1. The time now is 05:38 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com