title: On-Screen Keyboard hide and run within excel instance to use functionality
body: <p><em>To give a brief backstory to bring things up to my current position / reason for my question:</em></p>
  
  <p>I originally wanted to use sendkeys to send keyboard presses to a Citrix Xenapp Remote Terminal Application (VT320 Emulator).</p>
  
  <ul>
  <li>This does not work.</li>
  </ul>
  
  <p>After some investigation it became apparent that this has been a reasonably common issue.</p>
  
  <p>I eventually  found a work-around that involved opening the windows 'On-Screen Keyboard' application and sending mouseclicks using VBA to the OSK app itself. The key transmissions would be successfully received in the remote terminal application.  </p>
  
  <p>This solution is a rather awkward and not very practical solution as it relies on many factors e.g. screen resolution, co-ordinates / current position of the OSK etc. </p>
  
  <p>With the above in mind, I am looking to achieve a more full proof method and here's my thoughts:</p>
  
  <ul>
  <li>Rather than using simulated mouseclicks I would ideally like to be able to either 'embed' the OSK app into the excel instance and reference each key </li>
  <li>or hide the app and find a way to make the application receive the VBA keys requested.</li>
  </ul>
  
  <p>I'm aware that Sendkeys has its limitations so I have also tried using SendInput via a Keyb_Event and this also didn't work.</p>
  
  <p>To any half experienced expert, I'm clearly a beginner so I'm suffering from a lack of knowledge here perhaps.</p>
  
  <ul>
  <li>If anyone can point me in the right direction for solving this issue, I'd really appreciate it! </li>
  </ul>
  
  <p>Many thanks.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I've looked into this a little more and found this post:</p>
  
  <p><a href="https://stackoverflow.com/questions/3604033/finding-the-class-name-of-the-on-screen-keyboard?rq=1">Finding the class name of the On-Screen Keyboard?</a></p>
  
  <p>Which would suggest that if I know the class of the on screen keyboard, I could use its commands within excel VBA? </p>
  
  <ul>
  <li>I did try to use the code within the question but couldn't get it to work.</li>
  </ul>
  
  <p>So hopefully my question is a little easier to answer?</p>
  
  <p>Can I use the class name of the on-screen keyboard app / declare an API function that will allow me to send simulated key functions as if it's the OSK app being clicked by the mouse?</p>
  
  <p>Hopefully someone can help!! </p>