Home |
Search |
Today's Posts |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Matthew,
Thanks for your comment on this. API and the corresponding coding something which I'm not familiar with. Maybe, soom time soon, I will spend some time on this. Thnx Basta "Matthew Herbert" wrote: Basta, As noted by others on the thread, and from your observations, SendKeys is quite temperamental. Initially, when I used to use SendKeys I discovered issues with wait times and code debugging. For example, the "wait" argument of SendKeys never seemed to work, DoEvents sometimes did the trick, and Application.Wait or Sleep was almost always needed. Despite using these tricks to get SendKeys to work properly, I found it to be unreliable. (As a side note, I discovered that if I ran a procedure without any breakpoints, I could better test SendKeys; however, if I stopped or interrupted the code prior to a procedure completing its execution, then SendKeys never worked properly). Anyhow, I finally got so frustrated with SendKeys that I moved over to a number of API calls that work by grabbing handles to specific windows (i.e. windows, combo boxes, text boxes, etc.) and then sending messages to those handles. Though this was a significant investment in time and resources, I've never run into any SendKeys issues (including reliability). Best, Matthew Herbert "Helmut Meukel" wrote: A DoEvents might not be enough. I would use a call to SLEEP API function within a loop to avoid freezing Excel. Declare Sub Sleep lib "kernel32" (ByVal dwMillisecs as Long) Sub Doze(Millisecs as long) Dim i as Long for i = 1 to Millisecs/10 Sleep(10) 'freeze your code for 10 milliseconds next i End Sub Depending on the sluggishness of your system, you may need to call Doze with a value of up to 2000 (= 2 second) to allow the app getting activated and able to receive the SendKeys. Usually 200 to 300 should be sufficient. HTH. Helmut. "Gary''s Student" schrieb im Newsbeitrag ... If the problem is intermittent, it may be a timing issue. Try putting a DoEvents between your statements -- Gary''s Student - gsnu201002 "Basta1980" wrote: Hi all, I'm using a simple sendkey statement to paste (ctrl v) cell content to another application. However when running the code it sometimes works (I can see the cell content copied and pasted to the application) but most of the times it just jumps from Excel to the other application and stops (so nothing is pasted). Anybody got a clue what might be going on here? Code = Gemini: AppActivate ("CSM - Citrix Presentation Server Client") SendKeys ("{^V}"), True Kind regards, Basta . |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Sendkeys | Excel Programming | |||
SendKeys Help | Excel Programming | |||
Sendkeys | Excel Programming | |||
SendKeys? | Excel Programming | |||
Sendkeys | Excel Programming |