I want to be able to start a non-Office application via code in a macro.
Any pointers on hwo to do this?
Cheers
Printable View
I want to be able to start a non-Office application via code in a macro.
Any pointers on hwo to do this?
Cheers
Depends - What application is it?
It's not an 'off the shelf' package and it non-windows based.
I thinks it's on a UNIX platform???? and have been told it's on an AS400 mainframe.
Does this help?
It helps in that it tells me I'm out of my depth here. Sorry :(
The start up file is an .edp file if it helps
The Shell command is commonly used to start most non-office programs, but I think it has to be a Windows app.
It's been a few years, but I don't think the AS400 runs on Unix; I think IBM has it's own language for it. At any rate, Unix & AS400 were separate classes.
Here is an example of using the ShellExecute API to do a reliable shelling of most any app.
VB Code:
Option Explicit Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Const SW_SHOWNORMAL As Long = 1 Private Const SW_SHOWMINIMIZED As Long = 2 Private Const SW_SHOWMAXIMIZED As Long = 3 Private Sub Command1_Click() On Error GoTo MyError Dim lRet As Long lRet = ShellExecute(Me.hwnd, "Open", "C:\MyExe.edp", vbNullString, "C:\", SW_SHOWNORMAL) If lRet <= 32 Then MsgBox "Error Shelling" End If Exit Sub MyError: MsgBox Err.Number & " - " & Err.Description End Sub