I have used it a few times, but generally do look for ways to NOT use SendKeys.
However, in some cases, using that dirty method does do wonders. For instance, once in a recording situation, I was saving information to an Access database for various bits of info on the recording, much of which was auto and semi-auto input into the database. Then at the end of recording a file (with Creative MediaSource Player), I'd hit a button in Access that would automatically update the file info in Creative MediaSource by filling in the fields it asked for.
So in a case where you've got a Word document open, if a form were asking for a value, you could use sendkeys to send the appropriate string.
HOWEVER, here's where it isn't as good a method. In my specific example (that we used multiple times every week for a few years), at one point when we switched to using a P4D CPU based computer - only real difference - the SendKeys was more erratic, b/c SOMETHING was grabbing focus in the middle of the sendkeys operation. It probably was software related, but I never took the time to fully dicifer the situation.
Because of my situation, I went looking for any possible better methods, and found a SendKeys API by Dev Ashish that works better than the built-in. So if you wanted to use SendKeys more than sending a stray keystroke here and there, then it'd definitely be worth looking at. His API works the same or basically the same as the built-in function.
Here is Dev Ashish's API, which to use all you have to do is copy/paste the code to a new VBA Module:
But at the very basics of it, you could do something like this....
First, use the Shell command to send focus to a particular window/application/document/file... then you would use the SendKeys command with whatever you wanted to send.
Oh, and here is a tek-tips FAQ on the subject, though it doesn't seem to go very deep.. it doesn't specify the application where you want to send the keystrokes, which I personally think is a necessary piece - otherwise, focus could be sent to the wrong application, and that could be VERY bad:
faq707-5037
For understanding the Shell commands (not that it's absolutely necessary for a basic SendKeys command), take a look here:
Well, I started to just make something up, but actually I think I can go and find some code I've used at work in the past - I try to keep everything at least somewhere close by, so I can always refer to it for other projects, and this I've done MANY times!
At least for one or two instances, I think I've communicated between different systems by using SendKeys at work, but let me see if I can find an example, and I'll just post that...