Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I'm writing a macro in Excel which finds other files (not Excel files)
with a given name and then opens them. I'm using the Windows registry to find the programs associated with the files and then using the Shell command to open the files with the given program. My problem is that for some programs the Shell command opens a new instance of the program for each additional file, i.e. each AutoCAD file opens into its own instance of AutoCAD even if AutoCAD is already running. So my question is, is there a switch for the Shell command that tells it to check to see if an instance of a program is already running before starting a new one, and, if the program is already running, opens the file with the existing instance? Or is there another way of doing this without getting into the API of each program in question? Here's a snippet of my code: strCmd = appWord.System.PrivateProfileString("", _ "HKEY_CLASSES_ROOT\" & regType & "\shell\Open\command", _ "") If Len(strCmd) 0 Then strCmd = Replace(strCmd, "%1", fileWithPath) 'for pdf & dwg files strCmd = Replace(strCmd, "/dde", "/one " & """" & fileWithPath & """") 'for solidworks files Shell strCmd, vbNormalFocus Else MsgBox prompt:="Could not find an application" & vbCr & _ "registered to display file.", _ Buttons:=vbCritical + vbOKOnly, _ Title:="Not Registered" End If Thanks! Eric |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Shell command and Notepad | Excel Programming | |||
Shell Command | Excel Programming | |||
Shell command | Excel Programming | |||
xp shell command using vba | Excel Programming | |||
SHELL command | Excel Programming |