appactivate sendkeys not working with accelerator

  • Thread starter Thread starter RB Smissaert
  • Start date Start date
R

RB Smissaert

Using Excel 2002.
Have a simple sub that picks up a value from the active sheet, activates
another application and sends the value to the application. This sub runs
through a command button on a userform.
When I click the command button all works fine.
The command button has an accelerator key in this "z".
When I do Alt + z the application gets activated but the values don't get
send.

The simplified sub goes like this. The application is not actually
Calculator, but this sub shows the same behaviour.

Sub Test()

Dim ID As String

ID = ActiveCell.value

AppActivate "Calculator", True 'tried False as well

SendKeys ID, True

End Sub

When I put MsgBox ID before the line AppActivate it works again with the
accelerator key strokes.
It seems this problem has to do with focus, but I can't see the solution.
Thanks for any advice.


RBS
 
I think you've oversimplified it now <G>.

Sometimes including a line

Doevents

solves these issues as it gives some time for various handlers to do what
they wanna do....

give it a try and let us know



keepITcool

< email : keepitcool chello nl (with @ and .) >
< homepage: http://members.chello.nl/keepitcool >
 
Sub Test()
Dim ID As String
ID = "123{+}456="
AppActivate "Calculator", True 'tried False as well
SendKeys ID, True
End Sub


worked fine for me with the calculator.
 
Tom, Keepitcool,


Did you run this sub from a UserForm via an accelerator key connected to a
command button?
That is the situation I was talking about.
Managed to improve it by putting in 3 DoEvents like this:

Sub Test()

Dim ID As String

ID = ActiveCell.value

DoEvents

AppActivate "Calculator", True

DoEvents

SendKeys ID, True

DoEvents

End Sub


Even then it doesn't always work.
Would there be any alternative to using SendKeys?


RBS
 
Back
Top