Alt Tab multiple times in VB2005 with a program...

So I've been working on this for awhile, but what I need to happen is I have these applications open ( Internet Explorer, Outlook, VBA, VB, Calculator...) and I want my program to just tab through them all. So if I have 4 programs open, it should tab 3 times, and then tab 3 times repeatedly and it would go through each of the tabs and I was putting this in a loop that basically never ends because I want to do it until the user shuts it down.

I've tried so many pieces of code and none of them have worked, including mine which I think doesn't work because it only recognizes alt tabbing once.

Any help would be so appreciated. :(
Public Class Form1
 
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
 
    End Sub
    Sub Delay(ByVal dblSecs As Double)
        Const OneSec As Double = 1.0# / (1440.0# * 60.0#)
        Dim dblWaitTil As Date
 
        dblWaitTil = Now.AddSeconds(OneSec).AddSeconds(dblSecs)
        Do Until Now > dblWaitTil
            Application.DoEvents() ' Allow windows messages to be processed
        Loop
 
    End Sub
 
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 
 
        Dim i As Integer
        ' Dim j As Integer
        i = 0
 
        Dim windowszzz As Integer
        windowszzz = 1
 
        For i = 0 To windowszzz
            'Delay(5)
            ' For j = 0 To i
            SendKeys.Send("%{TAB}")
            Delay(5)
            SendKeys.Send("%{TAB}{TAB}")
            Delay(5)
            SendKeys.Send("%{TAB}{TAB}{TAB}")
            Delay(5)
            SendKeys.Send("%{TAB}{TAB}{TAB}")
            Delay(5)
            SendKeys.Send("%{TAB}{TAB}{TAB}")
            'Next
        Next
 
    End Sub
End Class

Open in new window

jdohenyAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Mike TomlinsonMiddle School Assistant TeacherCommented:
"...it only recognizes alt tabbing once."

Try one of these:

(1) Put "@" in front of all of them:

    SendKeys.Send("%{TAB}@{TAB}@{TAB}")

(2) Group them together with parenthesis:

    SendKeys.Send("%({TAB}{TAB}{TAB})")

(3) Use the "repeat" syntax by specifying the number of times to repeat:

    SendKeys.Send("%{TAB 3}")
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
jdohenyAuthor Commented:
I'm a little distressed that a number after the word solved my problem that I spent so long on, but so happy! Thank you so much for all your help :)!
0
Mike TomlinsonMiddle School Assistant TeacherCommented:
Glad that worked.

Looking back at my answer, though, #1 should have "%" instead of "@", and read:

    (1) Put "%" in front of all of them:

        SendKeys.Send("%{TAB}%{TAB}%{TAB}")

Guess I needed more coffee yesterday...   ;)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Programming

From novice to tech pro — start learning today.