Skip to Content
Excel® 2010 Power Programming with VBA
book

Excel® 2010 Power Programming with VBA

by John Walkenbach
April 2010
Intermediate to advanced
1080 pages
23h 37m
English
Wiley
Content preview from Excel® 2010 Power Programming with VBA

Chapter 20: Interacting with Other Applications

IN THIS CHAPTER

Starting or activating another application from Excel

Displaying Windows Control Panel dialog boxes

Using Automation to control another application

Using SendKeys as a last resort

Starting an Application from Excel

Launching another application from Excel is often useful. For example, you might want to execute another Microsoft Office application or even a DOS batch file from Excel. Or, as an application developer, you may want to make it easy for a user to access the Windows Control Panel to adjust system settings.

Using the VBA Shell function

The VBA Shell function makes launching other programs relatively easy. Following is an example of VBA code that launches the Windows Calculator application.

Sub StartCalc()

Dim Program As String

Dim TaskID As Double

On Error Resume Next

Program = “calc.exe”

TaskID = Shell(Program, 1)

If Err <> 0 Then

MsgBox “Cannot start “ & Program, vbCritical, “Error”

End If

End Sub

You'll probably recognize the application that this procedure launches in Figure 20-1.

475355-fg2001.tif

FIGURE 20-1: Running the Windows Calculator program from Excel.

The Shell function returns a task identification number for the application specified in the first argument. You can use this number later to activate the task. The second argument for the Shell function determines how the application is displayed. ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Excel® 2007 Power Programming with VBA

Excel® 2007 Power Programming with VBA

John Walkenbach
Excel® 2007 VBA Programmer's Reference

Excel® 2007 VBA Programmer's Reference

John Green, Stephen Bullen, Rob Bovey, Michael Alexander
Excel 2003 VBA Programmer's Reference

Excel 2003 VBA Programmer's Reference

Paul T. Kimmel, Stephen Bullen, John Green, Rob Bovey, Robert Rosenberg

Publisher Resources

ISBN: 9780470475355Purchase book